首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python Pandas,使用“loc”语句选择列

Python Pandas,使用“loc”语句选择列
EN

Stack Overflow用户
提问于 2018-02-27 00:31:16
回答 1查看 129关注 0票数 0

我有以下问题:

如果我选择了我的Pandas DataFrame的一些索引:

代码语言:javascript
复制
df = pd.DataFrame(data=CoordArray[0:,1:],index=CoordArray[:,0],columns=["x","y","z"])

如下所示:

代码语言:javascript
复制
print(df.loc[['1234567','7654321'],:])

它工作得很好。

但如果我将这些数据放在numpy数组中,将此数组转换为列表,并执行以下操作:

代码语言:javascript
复制
mynewlist = list(SomeNumpyArray)
print(df.loc[mynewlist])

我得到了以下问题:

代码语言:javascript
复制
"None of [[1234567, 7654321]] are in the [index]"

我真的不知道哪里出了问题。

EN

回答 1

Stack Overflow用户

发布于 2018-02-27 00:46:29

我还没能复制你的问题。正如@Wen评论的那样,你的list和numpy数组可能有不同的类型。

下面是一个示例,演示了列表或numpy数组可以用作索引器:

代码语言:javascript
复制
import pandas as pd, numpy as np

df = pd.DataFrame(data=[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]],
                  index=['1000', '2000', '3000', '4000'],
                  columns= ['x', 'y', 'z'])

idx = np.array(['2000', '3000'])

df.loc[idx]
#       x  y  z
# 2000  4  5  6
# 3000  7  8  9

lst = list(idx)

df.loc[idx_lst]
#       x  y  z
# 2000  4  5  6
# 3000  7  8  9
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48992913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档