python - 将许多具有相同列的数据帧垂直堆叠在一起的最快方法是什么?
问题描述
假设我有一个包含 100 个具有相同列的数据框的列表。df.append()
有没有比使用99 次更快的垂直堆叠它们的方法?类似于.join( )
字符串列表的东西,也许?
import pandas as pd
import numpy as np
from random import randint
lst = [pd.DataFrame(np.empty([randint(1,10),3]), columns=["A","B","C"]) for i in range(100)]
DF = lst[0]
for i in range(1,100):
DF = DF.append(lst[i])
解决方案
只需使用pd.concat
:
lst = [pd.DataFrame(np.empty([np.random.randint(1,10),3]), columns=["A","B","C"]) for i in range(100)]
pd.concat(lst)
==>
A B C
0 -3.105036e+231 -3.105036e+231 1.086944e-322
1 0.000000e+00 0.000000e+00 0.000000e+00
2 0.000000e+00 0.000000e+00 0.000000e+00
3 0.000000e+00 0.000000e+00 0.000000e+00
4 0.000000e+00 1.023640e-308 -1.494581e-154
.. ... ... ...
推荐阅读
- coq - 什么是 [...] 一般证明,为什么我不能删除它
- material-ui - 如何从 material-ui-picker 显示 DateRangePicker 的操作按钮
- oracle - Oracle 查询失败并添加了 COLLATE 子句
- r - SPSS 订阅中的 R 3.6 配置
- react-native - 反应原生导航在屏幕之间移动
- javafx - 无法将选中的复选框保存到变量
- python - 长按(python)录制按钮并播放语音
- flutter - Flutter 关闭对话框并重新加载页面,其中包含所选条件的过滤列表
- google-cloud-functions - Firebase 函数 console.log() 输出未显示在包含文件中
- html - 无法解析关键字