python - 通过行索引将小数据框分配给大数据框
问题描述
我正在尝试将一个小数据框分配给一个大数据框,它们都有相同的列。
我找不到这个的副本。
由于 IT 原因,我现在无法升级 Pandas 版本 1.1.4。
我失败的尝试:
import pandas as pd
import numpy as np
df1 = pd.DataFrame({
"a": np.arange(10),
})
df2 = pd.DataFrame({
"a": np.arange(5),
})
df1.iloc[3:3+len(df2)] = df2
print(df1)
印刷
a
0 0.0
1 1.0
2 2.0
3 3.0
4 4.0
5 NaN
6 NaN
7 NaN
8 8.0
9 9.0
必需的:
a
0 0.0
1 1.0
2 2.0
3 0.0
4 1.0
5 2.0
6 3.0
7 4.0
8 8.0
9 9.0
请注意,示例中只有一列,但实际上会有很多,我不想指定其中的任何一个。
我怎样才能按照熊猫的意思做到这一点?
另外,我的尝试发生了什么?
解决方案
您可以尝试values
属性或to_numpy()
方法:
df1.iloc[3:3+len(df2)]=df2.values
#OR
#df1.iloc[3:3+len(df2)]=df2.to_numpy()
更新:
另一种方式:
df1.iloc[3:3+len(df2)]=df2.set_index(df1.iloc[3:3+len(df2)].index)
df1 的输出:
a
0 0
1 1
2 2
3 0
4 1
5 2
6 3
7 4
8 8
9 9
推荐阅读
- c# - C# 中的 Oracle 数据库查询
- python - Celery:为什么它的分布式任务运行速度比多处理慢?
- tensorflow - 如何重置 Adam Optimizer (Tensorflow) 中的所有变量,然后我可以使用新的优化器重新训练模型
- ruby - 如何防止“超级”屈服
- java - 如何使用纯 java api 更改 RTC 流和组件所有权?
- ios - 分离数组中的数据
- c# - JpegBitmapDecoder 中的参数无效错误
- java - Redisson 按照新提交的作业的时间表执行以前的作业
- ios - 在 Swift 中随机改变状态一段时间后的套接字
- reactjs - 使用样式化组件时如何在 react-scripts-ts 项目中显示正确的 displayName