【问题标题】:Python pandas read_csv .txt file in for loop returns none elementfor循环中的Python pandas read_csv .txt文件不返回任何元素
【发布时间】:2021-03-10 20:13:44
【问题描述】:

我正在尝试从 list.txt 中读取

1
2
3
4
5

这里是代码

import pandas as pd

df = pd.read_csv('sample.csv', skipinitialspace=True)
list= pd.read_csv('list.txt')
print (list)

for i in list:
    df1 = df.loc[(df['ID'] == i)]
    print ('-------------------------')
    print (df1)

返回

  1
0  2
1  3
2  4
3  5
-------------------------
Empty DataFrame
Columns: [ID, 1st, 2nd, 3rd, 4th]
Index: []

为什么返回 ID 列的 i 值为 none,并打印 Empty Dataframe?

【问题讨论】:

  • 所有 pandas 对象都有一个在 repr 中显示的索引。如果你真的想要一个列表,你应该把它转换成一个列表

标签: python python-3.x pandas dataframe csv


【解决方案1】:

它返回 None 的原因是因为您以错误的方式迭代 DataFrame。

看看这个: pandas.DataFrame.iterrows

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-12
    • 2015-12-30
    • 2017-11-27
    • 1970-01-01
    • 2019-07-31
    • 1970-01-01
    • 1970-01-01
    • 2015-02-24
    相关资源
    最近更新 更多