我試圖創建代碼,它將CSV數據從CSV文件中的某些列中取出,並將它們合併到一個新的CSV文件中。我被指示使用熊貓,但我不知道我是否在正確的軌道上。我對Python相當陌生,所以要準備好自己的代碼。Python - 在CSV文件中組合列
我想用data.csv:
Customer_ID,Date,Time,OtherColumns,A,B,C,Cost
1003,January,2:00,Stuff,1,5,2,519
1003,January,2:00,Stuff,1,3,2,530
1003,January,2:00,Stuff,1,3,2,530
1004,Feb,2:00,Stuff,1,1,0,699
,並創建一個新的CSV,看起來像這樣:
Customer_ID,ABC
1003,152
1003,132
1003,132
1004,110
我至今是:
import csv
import pandas as pd
df = pd.read_csv('test.csv', delimiter = ',')
custID = df.customer_ID
choiceA = df.A
choiceB = df.B
choiceC = df.C
ofile = open('answer.csv', "wb")
writer = csv.writer(ofile, delimiter = ',')
writer.writerow(custID + choiceA + choiceB + choiceC)
不幸的是,所有這些都是將每行添加到一起,然後將每行的CSV創建爲一行。我的真正最終目標是找到A-C列中最常見的值,並使用最常出現的值將每個客戶組合到同一行中。我很難解釋。我想要的東西,需要data.csv並使得這樣的:
Customer_ID,ABC
1003,132
1004,110
「最發生的值」?如果有兩個具有相同出現次數的ID/ABC對,您希望發生什麼? (例如1003,132和1003,142)。 – DSM
我並不特別在乎現在選擇哪一個,但我想知道將來的參考如何操作哪一個是基於其他計算選擇的。也許如果是在上半年出售,它會選擇較低的價值,但如果是在下半年,則選擇較高的價值。我仍然在學習Python,所以我非常感謝你的幫助 – SgtSeamonkey