我正在尝试在同一数据帧的行中创建一个具有值的新列,以便 Year 列中单元格的值与标题匹配,并将值放在 Value 下的行单元格中。请参阅附图。有什么建议么?
2 回答
偶然的你
TA贡献1841条经验 获得超3个赞
您可能需要找到以下功能 lookup
pd.DataFrame({'Year':df.Year,'Value':df.set_index('Year').lookup(df.Year,df.Year)})
达令说
TA贡献1821条经验 获得超6个赞
如果您知道索引中的所有年份也在您的列中,您可以尝试以下操作:
import pandas as pd
import numpy as np
df = pd.DataFrame(
{2008: 5*[1], 2009: 5*[2], 2010: 5*[3], 2011: 5*[4], 2012: 5*[5]},
index=[2008, 2011, 2010, 2009, 2012]
)
np.diag(df.loc[df.index, df.index])
结果:
array([1, 4, 3, 2, 5])
添加回答
举报
0/150
提交
取消