用pandas读取csv文件

时间:2018-06-02 21:45:34

标签: pandas csv

enter image description here我有一个带有2列的csv文件,它是text和boolean(y / n),我试图将所有正值放在1个文件的1个文件中,而将其中的负值放在1个文件中。这是我试过的:

df = pd.read_csv('text_trait_with_binary_EXT.csv','rb',delimiter=',',quotechar='"')

#print(df)
df.columns = ["STATUS", "xEXT"]

positive = []
negative = []

for line in df:
    text = line[0].strip()

    if line[1].strip() == "y":
        positive.append(text)
    elif line[1].strip() == "n":
        negative.append(text)

print(positive)
print(negative)

当我运行它时,它只是给出一个空列表!

我是使用熊猫的新手,所以如果你们中的任何一个人可以提供帮助那就太棒了。

1 个答案:

答案 0 :(得分:0)

正如其他人所评论的那样,几乎总是比在Pandas中使用迭代更好的方法。它有许多内置函数来帮助避免循环。

如果我正确理解您的意图,您希望从第1列(名为'STATUS')获取值,请根据第2列(名为'xEXT')中的对应值是否为{{}来拆分它们。 1}}或'y',并生成包含第1列值的两个列表,以下内容应该有效(在您发布的前两行代码之后使用):

'n'

以下是loc文档的链接,对于此类问题非常有用。

上述解决方案假定您的数据已正确读取。如果它不适合您,请像其他人一样评论并添加一小部分数据样本,以便我们能够尝试我们提出的解决方案。