其實用不到csv,
你的資料檔一樣可由pandas讀入:
df = pd.read_csv('tttest1112.csv')
dat = pd.read_csv('bird-1.csv')
把多餘的括號移除:
# remove parenthesis
f = lambda s: s.split('(')[0]
df['birdName'] = df['birdName'].map(f)
執行篩選並存擋:
for birdname in df['birdName']:
savepath = 'your/file/path/' + birdname + '.csv'
dat[dat['birdName']==birdname].to_csv(savepath)
※ 引述《allen511081 (藍)》之銘言:
: 抱歉,題目無法詳述我的問題,先將我的程式碼貼上
: # -*- coding: utf-8 -*-
: import pandas as pd
: import csv
: df = pd.read_csv('birds-1.csv',low_memory=False)
: dfs=[]
: names=[]
: with open('tttest1112.csv','rb') as csvfile:
: records = csv.reader((line.replace('\0','') for line in csvfile),
: delimiter=",")
: for row in records: ##將原始資料存入
: for i in xrange(1,6,1):
: df2=df[df['birdName'].isin(row)]
: df2.to_csv('./'+str(i)+'.csv',index=False)
: 最近我重新開始我的資料剖析,在pandas這邊遇到一樣存檔問題,
: 而這次比較不一樣的是,我一個tttest1112.CSV測試檔裡放鳥名,
: 附圖:https://goo.gl/zxLWk7
: 我要從這個CSV裏頭,
: 將鳥名傳到上面的isin()後,對原始資料(df)做特定值的選取,
: https://goo.gl/dQKKuH
: 之後再存成新的CSV檔,而這樣的語法寫完後,可以產生5個CSV檔,
: 但是裡面的資料都會是最後一個鳥名的資料(我記得DF好像只會存最後一筆的資料?),
: 請問對於DF的操作有沒有辦法讓五種鳥的資料分別存一個CSV檔?