请帮帮我。例如,我有两个数据处理程序:
| 1 | 4 |
| 2 | 5 |
| 3 | 6 |和
| 7 | 10 |
| 8 | 11 |
| 9 | 12 |如何将它们加入到这样的垂直数据文件中:
| 1 | 4 |
| 2 | 5 |
| 3 | 6 |
| 7 | 10 |
| 8 | 11 |
| 9 | 12 |许多thx
发布于 2022-11-30 07:19:27
如果您的目标是垂直叠加两个(或更多) DataFrames,独立于索引,则使用numpy.vstack
import numpy as np
out = pd.DataFrame(np.vstack(table[:2]),
columns=table[0].columns # optional
)输出:
0 1
0 1 4
1 2 5
2 3 6
3 7 10
4 8 11
5 9 12发布于 2022-11-30 06:48:30
重复列名存在问题,需要先重命名:
print (table[0])
col col
0 1 4
1 2 5
2 3 6
print (table[1])
col col
0 7 10
1 8 11
2 9 12#https://stackoverflow.com/a/46332739/2901002
class renamer():
def __init__(self):
self.d = dict()
def __call__(self, x):
if x not in self.d:
self.d[x] = 0
return x
else:
self.d[x] += 1
return "%s_%d" % (x, self.d[x])
df = pd.concat((table[0].rename(columns=renamer()), table[1].rename(columns=renamer())),
ignore_index=True)
print (df)
col col_1
0 1 4
1 2 5
2 3 6
3 7 10
4 8 11
5 9 12https://stackoverflow.com/questions/74623765
复制相似问题