从dataframe提取值列表

2024-05-19 21:13:55 发布

您现在位置:Python中文网/ 问答频道 /正文

给定

pd.DataFrame([[1,2,3,4],[7,8,9,0]])
   0  1  2  3
0  1  2  3  4
1  7  8  9  0

发行

df.iloc[1,3]

返回1,3上的值;这是,0

但是

df.iloc[np.array([1,1]),np.array([1,3])]

返回

   1  3
1  8  0
1  8  0

但是我想要

[8,0]

我该怎么做


Tags: dataframedfnparraypdiloc
2条回答

使用numpy索引-因此首先将数据帧转换为2d numpy数组:

print (df.to_numpy()[np.array([1,1]),np.array([1,3])].tolist())
[8, 0]

您可以通过更简单的方式实现:

  • 使用loc[index,columns]i-e,传递索引和列列表
print(df.loc[1,[1,3]].to_list())
>> [8, 0]

相关问题 更多 >