Python 使用部分列名查找数据帧
您好,我正在尝试使用数据框中的值从选定列中查找值。我的查找值需要识别它所选列中匹配的列名,例如下面,我只想考虑在我的VLoopUp中JT中结束的列。 数据帧示例: 计划1_JT 平面图2 平面图3 计划1 计划二 JT 89 67 25 67 90 计划1 9 45 7. 6. 5. 计划3 45 3. 2. 6. 23 计划1Python 使用部分列名查找数据帧,python,pandas,dataframe,Python,Pandas,Dataframe,您好,我正在尝试使用数据框中的值从选定列中查找值。我的查找值需要识别它所选列中匹配的列名,例如下面,我只想考虑在我的VLoopUp中JT中结束的列。 数据帧示例: 计划1_JT 平面图2 平面图3 计划1 计划二 JT 89 67 25 67 90 计划1 9 45 7. 6. 5. 计划3 45 3. 2. 6. 23 计划1 具有以下功能的旧版本的解决方案: 对于具有以下功能的最新版本: 太好了,谢谢!它可以工作,但会出现以下错误:试图在数据帧切片的副本上设置一个值。尝试使用.loc[row
具有以下功能的旧版本的解决方案: 对于具有以下功能的最新版本:
太好了,谢谢!它可以工作,但会出现以下错误:试图在数据帧切片的副本上设置一个值。尝试使用.loc[row\u indexer,col\u indexer]=valueinstead@Lilly-如何在代码中创建df2?我在删除任何nan时创建了它:df2=df1[~df1.JT.str.containsnan]@Lilly-然后使用df2=df1[~df1.JT.str.containsnan]。复制
df['new'] = df.lookup(df.index, df['JT'] + '_JT')
print (df)
Plan1_JT Plan2_JT Plan3_JT Plan1_T Plan2_T JT new
0 89 67 25 67 90 Plan1 89
1 9 45 7 6 5 Plan3 7
2 45 3 2 6 23 Plan1 45
melt = df.melt('JT', ignore_index=False)
df['new'] = melt.loc[melt['JT'] + '_JT' == melt['variable'], 'value']
print (df)
Plan1_JT Plan2_JT Plan3_JT Plan1_T Plan2_T JT new
0 89 67 25 67 90 Plan1 89
1 9 45 7 6 5 Plan3 7
2 45 3 2 6 23 Plan1 45