エラーが発生しましたが、修正方法がわかりません。
以下はうまくいくようです:
def random(row):
return [1,2,3,4]
df = pandas.DataFrame(np.random.randn(5, 4), columns=list('ABCD'))
df.apply(func = random, axis = 1)
私の出力は次のとおりです。
[1,2,3,4]
[1,2,3,4]
[1,2,3,4]
[1,2,3,4]
ただし、列の 1 つを 1 や None などの値に変更すると、次のようになります。
def random(row):
return [1,2,3,4]
df = pandas.DataFrame(np.random.randn(5, 4), columns=list('ABCD'))
df['E'] = 1
df.apply(func = random, axis = 1)
エラーが表示されます:
ValueError: Shape of passed values is (5,), indices imply (5, 5)
私はこれに数日間取り組んできましたが、何もうまくいかないようです。興味深いのは、私が変わるとき
def random(row):
return [1,2,3,4]
に
def random(row):
print [1,2,3,4]
すべて正常に動作しているようです。
この質問は、この質問をするより明確な方法であり、混乱を招く可能性があると思います.
私の目標は、各行のリストを計算し、そこから列を作成することです。
編集:私は元々、1つの列を持つデータフレームから始めました。4 つの差分適用手順で 4 つの列を追加し、別の列を追加しようとすると、このエラーが発生します。