を意味し、私は、単純なデータフレームがあります。はValueErrorをを与える:アイテムの間違った数が2を通過し、配置は1
import pandas as pd
d = pd.DataFrame({'a':[[1], [2], [3]], 'b': [[4], [5], [6]]})
print d
a b
0 [1] [4]
1 [2] [5]
2 [3] [6]
をそして私は、私は、次の
を使用combined
0 [1, 4]
1 [2, 5]
2 [3, 6]
を取得したいです
:d['combined'] = d.apply(lambda row: row.a + row.b, axis=1)
、それは私にエラーを与えます
ValueError: Wrong number of items passed 2, placement implies 1
なぜ
d['combined'] = d.apply(lambda row: row.a[0] + row.b[0], axis=1)
は(私は必要なものではないが)動作しますが、上記の私のコードはエラーになりますでしょうか?
更新:
は実際に私の元のコードは、より多くのこのような私でした:d = pd.DataFrame({'a':[[1, 2], [2, 3], [3, 4]], 'b': [[4, 5], [5, 6], [6, 7]]})
a b
0 [1, 2] [4, 5]
1 [2, 3] [5, 6]
2 [3, 4] [6, 7]
と私は
combined
0 [1, 5]
1 [2, 6]
2 [3, 7]
としてリストにBでの最初の要素と最後の要素を取得したいです
私はちょうど空の文字列で新しい列を作成することができますと、次のいずれかの答えで指摘されているように、それを変更するために適用を使用して、直接列を追加してくれませんflexibiliリストを操作する。
ありがとうございます、これはうまくいくようです – user3230153