Python:如何在迭代pandas Data Frame时获取值而不是对象类型?

时间:2017-11-04 14:20:17

标签: python pandas loops literate-programming

我正在尝试使用下面的代码获取每行pandas数据帧的值。

points = [ makePoint(row) for row in df.iterrows() ]

这里df有4列。每个都包含整数数据。

当我尝试打印行时,它返回跟随,

1    3
2    3
3    4
4    5
Name: 0, dtype: int64

我只需要

[3,3,4,5] 

并且不想要索引,名称和dtype。

1 个答案:

答案 0 :(得分:0)

如果需要将tolist()转换为Series并使用iterrows返回元组 - 使用list索引,请使用Series,因此请添加i以解压缩:

points = [ makePoint(row).tolist() for i, row in df.iterrows() ]

list

points = [ list(makePoint(row)) for i, row in df.iterrows() ]

另一种解决方案:

points = df.apply(makePoint, axis=1).values.tolist()
相关问题