热线电话:13121318867

登录
2019-03-04 阅读量: 728
Python:将代码应用于整个数据框列

我在一个填充了值的数据框中有一个列col1。

col1

row1 [0.0, 6.33839991, 3.93961207, 5.27702178, 8.27702178, 6.44343, 5.668574]

row2 [0.0, 5.93961207, 4.27702178, 4.12702178]

row3 [0.0, 6.44428501, 3.93961207, 8.27702178, 4.27121178]

每行包含一个系列。我需要一个新列,col2说,它返回一个新系列。此系列从0开始,每次递增100,直到此系列与原始系列的长度匹配。

预期产出

col1 col2

row1 [0.0, 6.3, 3.93, 5.27, 8.2, 6.4, 5.6] [0,100,200,300,400,500,600]

row2 [0.0, 5.9, 4.2, 4.1] [0,100,200,300]

row3 [0.0, 6.4, 3.9, 8.2, 4.2] [0,100,200,300,400]

解决办法:

df['col2']=df.col1.transform(lambda x: pd.factorize(x)[0]*100)

df.col1.apply(lambda x: np.arange(len(x))*100)

print(df)

col1 \

row1 [0.0, 6.33839991, 3.93961207, 5.27702178, 8.27...

row2 [0.0, 5.93961207, 4.27702178, 4.12702178]

row3 [0.0, 6.44428501, 3.93961207, 8.27702178, 4.27...

col2

row1 [0, 100, 200, 300, 400, 500, 600]

row2 [0, 100, 200, 300]

row3 [0, 100, 200, 300, 400]

0.0000
4
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子