python - Pandas 按名称索引和访问列

标签 python indexing dataframe pandas

在使用特定列对 df 进行索引后,我尝试按列名称访问 pandas 数据框,但它返回不正确的列值。

import pandas as pd
rs =pd.read_csv('rs.txt', header="infer", sep="\t",  names=['id', 'exp','fov','cycle', 'color', 'values'], index_col=2)

rs.cycle.head()

我在这里用“fov”索引 df,并且我想访问“cycle”列,它给了我颜色列。我想我在这里遗漏了一些东西?


编辑 输入文件的前几行是:

6 3 1 G 0.96593 
6 3 1 O 0.88007 
6 3 1 R 0.94305 
6 3 2 B 0.90554 
6 3 2 G 0.93146

最佳答案

我认为问题的出现是因为您的数据文件有 5 列,而您的 names 列表有 6 个元素。要进行验证,请检查 id 列中的前几个值 - 如果我是对的,这些值将全部设置为 6exp 列中的前几项的值为 3

要解决此问题,请像这样读取输入文件:

rs =pd.read_csv('rs.txt', header="infer", sep="\t",  names=['exp','fov','cycle', 'color', 'values'], index_col=2

Pandas 会自动插入行标识符。

关于python - Pandas 按名称索引和访问列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15254984/

相关文章:

Python - OS X 中的屏幕抓取和控制鼠标

python - 如何消除文本图像的倾斜并检索该图像的新边界框 Python OpenCV?

mysql - 简单的 mysql 查询比嵌套 Select 慢

python-3.x - 如何在 tkinter 中显示数据框

r - for 循环在动态数量的数据帧上分配列值

用于在屏幕上显示/与键盘交互的Python包?

python - 修改 Pandas 数据框以列出年月日

postgresql - uuid、时间戳和几何图形的复合 GIN/GIST 索引

python - 在 Python 中,如何用另一个列表索引一个列表?

python - Pandas 过滤具有特定年份的数据框行