2016-09-27 201 views
0

so recentyl im试图从使用python和pandas的CSV文件中获取数据。 如果来自列2的数据等于某个字符串,代码应该返回或打印来自列1的数据。如果其他列值相等,则Pandas返回列值

import pandas as pd 
df = pd.read_csv('alerts.csv', sep=';', encoding='latin1') 

print(df[['color']['item']].loc[['color']=='red']) 

但它似乎不工作的字符串?

+1

您提供的样本数据,几排,上面,让别人明白。 – Zero

+0

颜色|某事| item :----- | -----:| :----: red | x |自行车 它应该返回自行车 – bozz

回答

0

你不使用的.loc正确

的.loc需要一个索引,而列,具有

indexer = df[df['color']=='red'].index 
print(df.loc[indexer,'item']) 
+0

输出: 系列([],名称:项目,D类:对象) 应该等于某个值 – bozz

+0

由于我没有访问您的数据是非常困难的调试问题。检查'df [df ['color'] =='red']。index'返回。尝试'打印(索引器)' –

+0

csv的例子: | color |某事|项目| 红x自行车 蓝x笔 红x车 并且应该返回自行车和汽车为例 – bozz

相关问题