【发布时间】:2018-07-31 12:03:18
【问题描述】:
我希望能够拉出任意行,例如第 4 行,并获取一个数组,以便我可以通过另一个函数发送它。
最简单的方法是什么?
【问题讨论】:
标签: python arrays pandas numpy indexing
我希望能够拉出任意行,例如第 4 行,并获取一个数组,以便我可以通过另一个函数发送它。
最简单的方法是什么?
【问题讨论】:
标签: python arrays pandas numpy indexing
由于 Pandas 数据在内部存储为 Numpy 数组,因此您可以直接提取 Numpy 表示。
使用pd.Series.to_numpy方法:
df.iloc[3].to_numpy() # output 4th row as Numpy array
使用pd.Series.values属性:
df.iloc[3].values # output 4th row as Numpy array
请记住,如果您的数据框包含多种类型,则按行 Numpy 数组的 dtype 可能会变为 object。这会导致后续操作效率低下。
【讨论】:
# Dummy DataFrame
df = pd.DataFrame({'col1': [1,2,3], 'col2': [4,5,6]})
# Extract second row (index: 1)
df.iloc[1].values
【讨论】: