簡體   English   中英

使用Pandas和Python過濾CSV文件程序

[英]Filter CSV File Program using Pandas and Python

我目前有一個任務,涉及下載CSV主文件,刪除A列-B列<= 0,C列等於給定短語的行。 我正在尋找一個創建程序,該程序將:

  • 導入CSV文件
  • 刪除列A-列B <= 0的所有行
  • 要求輸入以在C列上過濾一個或多個短語
  • 將CSV導出到新文件

到目前為止,我已經確定最好的方法是使用Pandas的數據框功能,因為我以前曾使用它對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列中的多個短語? 我希望程序采用一個或多個短語,並且僅顯示列C的值等於這些值之一的行。 任何指導將是驚人的。 謝謝!!

我只是要求輸入要以逗號分隔:

phrases = phrases.split(",")
file = file[file.C.isin(phrases)]

也許這可以幫助您:

import csv

input = open(sourcefile.csv, 'rb')
output = open(out_sourcefile, 'wb')
writer = csv.writer(output)
for row in csv.reader(input):
    if (phrases you want C column not to be,and you can add here multiple phrases):
        continue
        writer.writerow(row)
input.close()
output.close()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM