我有以下空白数据框:
ds = ['ds1' ,' ds2', 'ds3']
cl = ['cl1', 'cl2', 'cl3']
re = ['re1', 're2', 're3', 're4']
rows = pd.MultiIndex.from_product([ds, cl, re])
ro = [1,2,3]
fo = [1,2,3,4,5]
cols = pd.MultiIndex.from_product([ro, fo])
df = pd.DataFrame(data=None, index=rows, columns=cols)
我现在正在尝试使用以下代码填充第一个单元格:
somevalue = 42
df[1, 1]['ds1', 'cl1', 're1'] = somevalue
没有引发任何错误,但没有填充df。我还能如何填充数据框?
答案 0 :(得分:3)
使用df.at
进行单个单元格分配。
df.at[('ds1', 'cl1', 're1'), (1, 1)] = somevalue
您也可以使用loc
,但在单个单元格上使用起来却不那么快。
df.loc[('ds1', 'cl1', 're1'), (1, 1)] = somevalue