我有一个多级数据帧df1:
FE F1 F2
C_Step
UNKNOWN 0.360360 0.155039
fair 0.135135 0.348837
good 0.180180 0.310078
poor 0.324324 0.186047
我想用UNKNOWN索引行填充所有数据框。在结果数据框中,所有行都是相同的。
所需的数据帧df1:
FE F1 F2
C_Step
UNKNOWN 0.360360 0.155039
fair 0.360360 0.155039
good 0.360360 0.155039
poor 0.360360 0.155039
答案 0 :(得分:2)
这不是不是多级数据框。您的数据框仅具有其index
和columns
属性的名称。
您可以使用列表或NumPy数组进行分配,使用iloc
来选择第一行。
df = pd.DataFrame({'F1': [0.36036, 0.36036, 0.36036, 0.36036],
'F2': [0.155039, 0.155039, 0.155039, 0.155039]},
index=pd.Index(['UNKNOWN', 'fair', 'good', 'poor'], name='C_step'),
columns=pd.Index(['F1', 'F2'], name='FE'))
print(df)
# FE F1 F2
# C_Step
# UNKNOWN 0.360360 0.155039
# fair 0.135135 0.348837
# good 0.180180 0.310078
# poor 0.324324 0.186047
df[['F1', 'F2']] = df.iloc[0].values
print(df)
# FE F1 F2
# C_Step
# UNKNOWN 0.36036 0.155039
# fair 0.36036 0.155039
# good 0.36036 0.155039
# poor 0.36036 0.155039