0
私はいくつかの簡単なデータ操作を実行しようとしていて、本当に私を困惑させる奇妙なエラーに遭遇しています。私はそうのように(要素のタイプは、以下に示す)、浮動小数点数のリストのpd.Seriesを持っている:私が期待するようndarray to pd.Seriesのintのリスト
y_hat:
0 [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
1 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
2 [0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0]
3 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
4 [0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 0.0, 0.0]
...
638 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
639 [0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0]
640 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
641 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
642 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
type(y_hat): <class 'pandas.core.series.Series'>
type(y_hat[0]): <class 'list'>
type(y_hat[0][0]): <class 'float'>
しかし、私は要素を操作することはできません。次のコードは機能しません。
y_hat = y_hat.apply(lambda x: x.append(1.0))
すべての要素を非タイプに変換するだけです。しかし、これは個々の要素のために働くん:
test = y_hat[0].append(1.0)
任意のアイデアを、私は)(series.applyに追加使用して反復処理することはできませんなぜですか?
'append'メソッドは何も返しません。 'apply'メソッドの中だけではなく、次のようにしてください: ' foo = [1,2] bar = foo.append(3) 'そして' bar'を見てください – johnchase
ああ、解明してくれてありがとう! – Brendan
好奇心の高まりから、なぜあなたは* lists *の 'pd.Series'を使っていますか?なぜデータフレームでも、2次元のnumpy.ndarrayでもいいのですか? –