ループを実行して、マージを実行しようとしています。 マージの各段階で、新しい接尾辞付きの変数を作成します。最初の段階の後、私はVARIABLE_1とVARIABLE_2を持っています。 2番目のマージ後にVARIABLE_1、VARIABLE_2、およびVARIABLE_3をマージします。等 今私は名前を変更し、各段階で最後の2つの操作を実行する必要があります。 だから最初のマージの後、私は私が私には論理的に思えた何VARIABLE_2とVARIABLE_3など異なる名前の列をループする
の名前を変更する必要がある2段目のVARIABLE_1とVARIABLE_2 の名前を変更する必要があり、次のようにマージを実行することです:
for count in range(1,200):
df=pd.merge(df, dforig, left_on=['ID'], right_on=['ID'], suffixes=('count', 'count+1'),copy=True, how='left')
df=df.rename(columns={'VARIABLE_count':'VARIABLE_count-2', 'VARIABLE_count+1':'VARIABLE'})
最初のマージの前df = dforig 最初のマージdfが新しいデータセットの後 dforigは依然として元のデータセットです。
ID VARIABLE_1 VARIABLE_2
x y z
を、これはなるはずです::
だから、最初のマージ状態の後、私は今持っている
ID VARIABLE_-1 VARIABLE
x y z
です
dforigはまだのように見えるdfを:
ID VARIABLE
問題は次のとおりです: ' VARIABLE_count 'は列に対する有効な参照ではありません。 concanecateがstr
にint
をキャストし、前に名前が