我有20,000个类型为numpy.ndarray
的数组,长度为4421,其值为“ts”。他们看起来像这样
array([0.33798802, 0.28742515, 0.3366694 , ..., 3.47222222, 28.90786312, 66.12929928])
他们的链接类“class_id”在此格式的另一个numpy.ndarray
array([[2],
[3],
[2],
...,
[2],
[2],
[2]])
如何将numpy.ndarray
合并到一个包含20,000行和4422列的数据框中(其中最后一列是“class_id”中的类)。
输出应该是
3.37988024e-01, 2.87425150e-01, 3.36669403e-01, 3.47222222e+00, ..., 2
3.78449348e-01, 3.68259383e-01, 3.77523300e-01, 7.93650794e+00, ..., 3
4.20835393e-01, 3.83079983e-01, 4.20191384e-01, 4.13223140e+00, ..., 2
答案 0 :(得分:1)
假设您有一个numpy数组的列表/数组(ts
),您只需使用np.concatenate
:
import numpy as np
import pandas as pd
ts = [np.array([1,1,1,1]), np.array([2,2,2,2]), np.array([3,3,3,3])]
class_id = np.array([[4], [5], [6]])
pd.DataFrame(np.concatenate([ts, class_id], axis=1))
# 0 1 2 3 4
# 0 1 1 1 1 4
# 1 2 2 2 2 5
# 2 3 3 3 3 6
如果您的ts
是字典,并且您考虑到更复杂的“加入”或“连接”行为,则会更复杂。但至少应该让你开始。