根据条件选择iloc

时间:2019-12-04 16:28:38

标签: python indexing subset

我的问题很难解释,但可以通过示例轻松理解:

从此数据框

pd.DataFrame([[2,"1523974569"],[3,"3214569871"],[0,"9384927512"]])

我想获得:

pd.DataFrame(["15","321",""])

这意味着第一列告诉我应该从头开始从第二列中提取多少个字符。
谢谢

1 个答案:

答案 0 :(得分:1)

您可以在以下数据框上使用applylambda来获取它

df = pd.DataFrame([[2,"1523974569"],[3,"3214569871"],[0,"9384927512"]])
df[2] = df.apply(lambda x : x[1][:x[0]], axis=1)
df

它将为您提供输出

    0   1           2
0   2   1523974569  15
1   3   3214569871  321
2   0   9384927512