私はしばらく前から出てきた問題を理解しようとしていましたが、何とか解決策を見つけることができません。既存のパンダのデータフレームにnp配列を追加する
私はすでに値で満たされているパンダのデータフレームを作成しました、のは、(4,3)の寸法を言わせ
df=
A B C
0 valX valX valX
1 valY valY valY
2 valZ valZ valZ
3 valW valW valW
私は今、何をしたいのか、10の追加の列を追加でそれぞれがnumpyのを含みます38個のゼロで満たされた配列。
私の解決策は、最初に配列を文字列にキャストして元のdfに追加したときに動作しているようです。
しかし、Pandasは単純な数字の配列を受け入れません。 列の値がnumpyの配列である必要があります。後でsklearn計算を行う予定です。
後で私のコードで、特定の列を特定の文字のワンホットエンコーディングに置き換えます。残りの列はゼロパディングとして機能します。 (10列を追加するために働く)私のコードの
例:
#create empty array
x = np.zeros(38)
for i in range(0, 10):
col_name = "char_" + str(i)
df[col_name] = str(x)
ここでの問題は、私は文字列にXをキャストする必要があるということです。
ValueError: Length of values does not match length of index
あなたはDF [COL_NAME] = x.astype 'が必要です(STR私はnumpyの配列としてそれを維持した場合、それは私に、このエラーがスローされます) '? – jezrael
こんにちは、あなたの答えに感謝します。上の例では、配列の代わりに文字列をdfに追加するだけです。 –