2016-11-04 112 views
2
energy.loc['Republic of Korea'] 

我想將'韓國'指數的值改爲'韓國'。 但數據幀太大,無法更改每個索引值。我如何改變這個單一值?如何更改熊貓數據框中的單個索引值?

+3

你的問題還不清楚,你想改變'Republic of Korea''的所有實例,或者你想知道如何更新很多不同的索引值?請發表一個具有代表性的例子,包括你的代碼和期望的結果,除了你可以做'df.index.set_value(df.index,'Republic of Korea','South Korea')' – EdChum

回答

19

你想要做這樣的事情:

as_list = df.index.tolist() 
idx = as_list.index('Republic of Korea') 
as_list[idx] = 'South Korea' 
df.index = as_list 

基本上,你得到的索引列表,改變一個元素,替換現有的索引。

1

下面是基於set_value

df = df.reset_index() 
df.drop('index', axis = 1, inplace=True) 
index = df.index[df["Country"] == "Republic of Korea"] 
df.set_value(index, "Country", "South Korea") 
df = df.set_index("Country") 
df["Country"] = df.index 
1

另一個想法這裏是個不錯的選擇,在列使用replace

df.reset_index(inplace=True) 
df.drop('index', axis = 1, inplace=True) 
df["Country"].replace("Republic of Korea", value="South Korea", inplace=True) 
df.set_index("Country", inplace=True) 
相關問題