从同一数据帧的行中的值在数据帧中创建一个新列

我正在尝试在同一数据帧的行中创建一个具有值的新列,以便 Year 列中单元格的值与标题匹配,并将值放在 Value 下的行单元格中。请参阅附图。有什么建议么?

http://img1.mukewang.com/60c9b1df0001807102130240.jpg


慕后森
浏览 183回答 2
2回答

偶然的你

您可能需要找到以下功能 lookuppd.DataFrame({'Year':df.Year,'Value':df.set_index('Year').lookup(df.Year,df.Year)})

达令说

如果您知道索引中的所有年份也在您的列中,您可以尝试以下操作:import pandas as pdimport numpy as npdf = 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])
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python