我在数据框中有一个带有传感器标识符和变化值的列。我还有另一个数据框,其中包含传感器名称的简单英语描述。看起来像这样:Date zz8029 df456sz2017-01-01 1 2... . .... . .密码第二个数据帧如下所示:name descriptionzz8029 ROOM201-TEMP有没有一种方法可以使用密码第二个数据帧以编程方式重命名第一个数据帧中的所有列?有数百个传感器名称,因此手动重命名它们不会做到。结果看起来像这样Date ROOM201-TEMP ROOM200-TEMP2017-01-01 1 2... . .... . .
2 回答

蝴蝶不菲
TA贡献1810条经验 获得超4个赞
有,好老pd.map。它用于系列,但我认为可以使它适用于列名
z = {k: g.description.values[0] for k, g in df2.groupby('name')}
df.columns = df.columns.map(z)

江户川乱折腾
TA贡献1851条经验 获得超5个赞
使用map其中arg是用“从价值”和值是什么映射到指数系列:
df = df.set_index('Date')
df.columns = df.columns.map(df2.set_index('name')['description'])
df = df.reset_index()
df
输出:
Date ROOM201-TEMP ROOM200-TEMP
0 2017-01-01 1 2
添加回答
举报
0/150
提交
取消