2
我創造了這個數據幀:重命名大熊貓數據幀未命名的多指標列
import pandas as pd
columns = pd.MultiIndex.from_tuples([("x", "", ""), ("values", "a", "a.b"), ("values", "c", "")])
df0 = pd.DataFrame([(0,10,20),(1,100,200)], columns=columns)
df0
我卸載df0
擅長:
df0.to_excel("test.xlsx")
,並再次將其裝入:
df1 = pd.read_excel("test.xlsx", header=[0,1,2])
df1
而且我有Unnamed :...
列名。
爲了讓df1
樣子inital df0
我運行:
def rename_unnamed(df, label=""):
for i, columns in enumerate(df.columns.levels):
columns = columns.tolist()
for j, row in enumerate(columns):
if "Unnamed: " in row:
columns[j] = ""
df.columns.set_levels(columns, level=i, inplace=True)
return df
rename_unnamed(df1)
幹得好。但有沒有熊貓的方式從盒子做到這一點?
不幸的大熊貓對此沒有的功能。 'str.contains'只能和'Series'一起使用,所以需要'for'。 – jezrael