我目前有一项任务需要下载一个CSV主文件,删除列A - B列< = 0,列C等于给定短语的任何行。我期待到建立一个程序,将:使用Pandas和Python过滤CSV文件程序
- 导入CSV文件
- 删除所有行,其中列A - B列< = 0
- 询问输入到C列筛选一个以上的短语
- 导出CSV到一个新文件
到目前为止,我已经确定,要做到这一点的最好办法是用大熊猫据帧的功能,因为我已经用它之前执行其他对CSV进行操作文件:
import pandas as pd
file = read_csv("sourcefile.csv")
file['NewColumn'] = file['A'] - file['B']
file = file[file.NewColumn > 0]
columns = ['ColumnsIWantToRemove']
file.drop(columns, inplace=True, axis=1)
phrases = input('What phrases are you filtering for? ')
file = file[file.C = phrases]
file.to_csv('export.csv')
我的问题是,如何过滤柱下多个短语?我希望程序采取一个或多个短语,并只显示列C的值等于这些值之一的行。任何指导都会很棒。谢谢!!
我已经试过这一点,但它似乎并没有被过滤和当我导出数据文件时,它会出现空白。有任何想法吗? – dner
@dner打印语句在这里是你的朋友,你应该尝试在拆分之前和之后打印短语,然后你可以看到你是否可以在repl中复制它(例如ipython)。 –