2016-12-06 79 views
1

時增加了一個空列我有一個簡單的程序中,我想將號碼添加到列的末尾大熊貓保存

fajl = pd.read_csv('example.csv') 
print (fajl) 
fajl.at[len(fajl['Hrana']),'Hrana'] = 350 
print (fajl) 
fajl.to_csv('example.csv') 

第一次印刷是:

Hrana Izlasci 
0 1641 6500.0 
1 910  NaN 
2 2100  NaN 
3 371  NaN 
    Hrana Izlasci 
0 1641.0 6500.0 
1 910.0  NaN 
2 2100.0  NaN 
3 371.0  NaN 
4 350.0  NaN 

這是好,這是我期望它做的,但當我第二次啓動它時:

Unnamed: 0 Hrana Izlasci 
0   0 1641.0 6500.0 
1   1 910.0  NaN 
2   2 2100.0  NaN 
3   3 371.0  NaN 
4   4 350.0  NaN 
    Unnamed: 0 Hrana Izlasci 
0   0.0 1641.0 6500.0 
1   1.0 910.0  NaN 
2   2.0 2100.0  NaN 
3   3.0 371.0  NaN 
4   4.0 350.0  NaN 
5   NaN 350.0  NaN 

它增加了一個新的列,我不知道爲什麼。我是熊貓新手,所以有人可以解釋爲什麼會發生這種情況,我該如何解決它?

回答

1

你需要添加參數index=Falseto_csv的(在DataFrame第一列)不保存index

fajl.to_csv('example.csv', index=False) 
fajl = pd.read_csv('example.csv') 
print (fajl) 
    Hrana Izlasci 
0 164.0 6500.0 
1 910.0  NaN 
2 2100.0  NaN 
3 371.0  NaN 
4 350.0  NaN 

的第二讀取CSV另一種解決方案是用於讀取第一列read_csv添加參數index_colindex

fajl.to_csv('example.csv') 
fajl = pd.read_csv('example.csv', index_col=[0]) 
print (fajl) 
    Hrana Izlasci 
0 164.0 6500.0 
1 910.0  NaN 
2 2100.0  NaN 
3 371.0  NaN 
4 350.0  NaN 
+0

謝謝,我會接受,當我可以:) – kemis

+0

你在to_csv函數調用中設置index = False。但是,您鏈接到read_csv函數。如果這是打算,我完全不解:) – Quickbeam2k1

+0

@ Quickbeam2k1 - 謝謝你,我編輯它。 – jezrael