[英]How to use `numpy.hstack()` with `numpy.ndarray` data type?
我有一個numpy.DataFrame
說df
有 3 列col_1
, col_2
, col_3
。 col_1
中的數據是numpy.ndarray
,如下所示: array([ 0.216, -0.290, 0.349])
我如何使用 np.hstack() 來擴展DataFrame
,其中列由col_1
中的每個數據點組成?
即原裝DataFrame
col_1 col_2 col_3
------------------------------------------------------
0 [0.216, -0.290, 0.349] NORMAL N09_M07_F10_K001_1
假設 DataFrame
col_3 col_2 0 1 2
------------------------------------------------
0 N09_M07_F10_K001_1 NORMAL 0.216 -0.290 0.349
我試過這樣:
Supposed_DataFrame = pd.concat(
[df[['label', 'filename']],
pd.DataFrame(np.hstack(df["signal"].values).T)
],
axis=1)
但 output 是:
col_3 col_2 0
-----------------------------------
0 N09_M07_F10_K001_1 NORMAL 0.216
任何更簡單的解決方案將不勝感激
看看這段代碼:
import pandas as pd
dict_ = {
'col_1': [[0.216, -0.290, 0.349]],
'col_2': 'NORMAL',
'col_3': 'N09_M07_F10_K001_1'
}
df2 = pd.DataFrame(dict_)
supposed_DataFrame = pd.concat([df2[['col_3', 'col_2']], pd.DataFrame(df2['col_1'].to_list(), columns=[0,1,2])], axis=1)
print (supposed_DataFrame)
方法2 :使用基本步驟:
row_1 = df2['col_1'][0]
for i in range(len(row_1)):
df2[i] = row_1[i]
df2.drop('col_1', axis=1, inplace=True)
print(df2)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.