给出:
结果
| D001 | D002 | D003 | D004 | D005 |
|------|------|------|------|------|
| 3 | 5 | 3 | 4 | 4 |
| 4 | 4 | 5 | 3 | 4 |
| 5 | 4 | 5 | 5 | 3 |
个人
| Engagement Index | Manager Index | HR Index | Manager Index |
|------------------|---------------|----------|---------------|
| 3.14 | 3.78 | 4.88 | 4.21 |
| 4.15 | 4.27 | 2.89 | 4.43 |
| 4.20 | 3.89 | 3.92 | 4.65 |
我有两个数据帧result
和individual
。我想从中关联result[corru col]和individual[corru with]列
corr_col = ['D001', 'D002', 'D003', 'D004', 'D005', 'D006', 'D007', 'D008']
corr_with = ['Engagement Index','Manager Index','HR Index','Leadership Index']
我试过了
for j in corr_with:
val = []
for i in corr_col:
x = round(result[i].corr(individual[j]),2)
val.append(x)
correlation = pd.DataFrame({'Driver': corr_col, j : val})
correlation
但这让我
| Driver | Leadership Index |
|--------|------------------|
| D001 | 0.72 |
| D002 | 0.78 |
| D003 | 0.75 |
| D004 | 0.71 |
| D005 | 0.73 |
| D006 | 0.74 |
| D007 | 0.76 |
| D008 | 0.38 |
我甚至试过
result[corr_col].corr(individual[corr_with])
这给了我ValueError:数据帧的真值是不明确的。使用a.empty、a.bool()、a.item()、a.any()或a.all()
所需输出:
| Driver | Engagement Index | Manager Index | HR Index | Leadership Index |
|--------|------------------|---------------|----------|------------------|
| D001 | 0.72 | 0.64 | 0.81 | 0.67 |
| D002 | 0.78 | 0.75 | 0.80 | 0.70 |
| D003 | 0.75 | 0.69 | 0.78 | 0.69 |
| D004 | 0.71 | 0.72 | 0.73 | 0.74 |
| D005 | 0.73 | 0.71 | 0.75 | 0.76 |
| D006 | 0.74 | 0.78 | 0.68 | 0.68 |
| D007 | 0.76 | 0.78 | 0.75 | 0.80 |
| D008 | 0.38 | 0.75 | 0.69 | 0.78 |
谢谢你的时间和考虑
我认为有必要将嵌套循环中的每个列表分配给最终列表
out
,并将其传递给DataFrame
构造函数:或列出理解解决方案:
另一个带有^{} 的解决方案:
相关问题 更多 >
编程相关推荐