[英]How do I change the header on a 2 column CSV file in python using the pandas library without creating a new file?
[英]How do I change Index in a CSV file through pandas in python?
我正在嘗試將“ID”作為索引,它會引發下面提到的錯誤和圖像:
obj= pd.read_csv("Supermarkets.csv")
obj
ID Address City Country Name Number
0 1 Ecity-1 Bangalore India village mart 2
1 2 Ecity-2 Mysore India More 3
2 3 Ecity-3 Dharwad India Bigg bazar 1
3 4 Ecity-4 Haveri India Super Mart 2
4 5 Ecity-5 Badami India Kirani angadi 1
obj.set_index("ID")
錯誤:
Traceback (most recent call last):
File "C:\Users\sharathkumar.chattar\AppData\Local\Programs\Python\Python36-32\lib\site-packages\pandas\core\indexes\base.py", line 2656, in get_loc
return self._engine.get_loc(key)
File "pandas\_libs\index.pyx", line 108, in pandas._libs.index.IndexEngine.get_loc
File "pandas\_libs\index.pyx", line 132, in pandas._libs.index.IndexEngine.get_loc
File "pandas\_libs\hashtable_class_helper.pxi", line 1601, in pandas._libs.hashtable.PyObjectHashTable.get_item
File "pandas\_libs\hashtable_class_helper.pxi", line 1608, in pandas._libs.hashtable.PyObjectHashTable.get_item
KeyError: 'ID'
我認為問題在於“ID”列名稱中有尾隨空格。 我復制了您的數據,但在導入時刪除了任何多余的空間。 您會注意到列名是如何正確對齊的。 您的 ID 列似乎不是,可能是因為名稱中有尾隨空格。 對於其他列名稱,這似乎也是正確的。
import pandas as pd
obj = pd.read_csv('Supermarkets.csv')
obj
ID Address City Country Name Number
0 1 Ecity-1 Bangalore India village mart 2
1 2 Ecity-2 Mysore India More 3
2 3 Ecity-3 Dharwad India Bigg bazar 1
3 4 Ecity-4 Haveri India Super Mart 2
4 5 Ecity-5 Badami India Kirani angadi 1
obj.set_index("ID")
Address City Country Name Number
ID
1 Ecity-1 Bangalore India village mart 2
2 Ecity-2 Mysore India More 3
3 Ecity-3 Dharwad India Bigg bazar 1
4 Ecity-4 Haveri India Super Mart 2
5 Ecity-5 Badami India Kirani angadi 1
我可以重現您的相同數據表並通過使用帶空格的全名來避免錯誤:
obj = pd.read_csv('Supermarkets_spaces.csv')
obj
ID Address City Country Name Number
0 1 Ecity-1 Bangalore India village mart 2
1 2 Ecity-2 Mysore India More 3
2 3 Ecity-3 Dharwad India Bigg bazar 1
3 4 Ecity-4 Haveri India Super Mart 2
4 5 Ecity-5 Badami India Kirani angadi 1
obj.set_index("ID ")
Address City Country Name Number
ID
1 Ecity-1 Bangalore India village mart 2
2 Ecity-2 Mysore India More 3
3 Ecity-3 Dharwad India Bigg bazar 1
4 Ecity-4 Haveri India Super Mart 2
5 Ecity-5 Badami India Kirani angadi 1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.