如何根据其他两列的第一个和最后一个字符位置指示符对列值进行切片?你知道吗
以下是示例df的代码:
import pandas as pd
d = {'W': ['abcde','abcde','abcde','abcde']}
df = pd.DataFrame(data=d)
df['First']=[0,0,0,0]
df['Last']=[1,2,3,5]
df['Slice']=['a','ab','abc','abcde']
print(df.head())
代码输出:
所需输出:
Tags:
只需使用for循环,您可能会担心速度,请检查For loops with pandas - When should I care?
我不确定这是否会更快,但类似的方法是:
简单地说,您将遍历每一行(
axis=1
),并应用一个自定义函数。该函数获取行(存储为x
),并使用第二个和第三个元素作为切片索引对第一个元素进行切片(即lambda
部分)。如果这还不清楚的话,我很乐意详细说明。你知道吗相关问题 更多 >
编程相关推荐