93927


列名無い、同じ構造のデータフレームの足し算、  
私はこう書きましたが、  
names=['time','交通量']  
df1= pd.read_csv(r'file1.csv', index_col= 0 ,names=cols_name)  
df2= pd.read_csv(r'file2.csv', index_col= 0 ,names=cols_name)  
df_sum = (df1.set_index('time') + df2.set_index('time')).reset_index()  
print(df_sum)

エラーのメッセージが出ました：  
None of ['time'] are in the columns

どのように修正したらよいでしょうか？  
どうぞよろしくお願いいたします。[![画像の説明をここに入力](https://i.stack.imgur.com/4cycG.jpg)](https://i.stack.imgur.com/4cycG.jpg)


CC BY-SA 4.0
2023-02-20T09:34:20.313
93926
2023-02-20T10:01:21.580
56371
question
python pandas
列名無い、同じ構造のdataframeの値を足し算


`read_csv()` で `index_col= 0` つまり日時項目がインデックスに指定されてるので,

  * 再度 `set_index()` する必要はないはず
  * すでにインデックスに指定されてるので, `df['time']` の項目は存在しない

[code]

    df1.columns   # カラムは 1つ
    # Index(['交通量'], dtype='object')
    
    df1.reset_index().columns   # reset_index() すれば time 項目が現れる
    # Index(['time', '交通量'], dtype='object')
    
[/code]

以上のことからこのように

[code]

    import pandas as pd
    import io
    csv1 = io.StringIO('''
    2023/1/1,11
    2023/1/2,12
    2023/1/3,13
    2023/1/4,14
    2023/1/5,15
    ''')
    csv2 = io.StringIO('''
    2023/1/1,21
    2023/1/2,22
    2023/1/3,23
    2023/1/4,24
    2023/1/5,25
    ''')
    cols_name=['time','交通量']
    df1= pd.read_csv(csv1, index_col= 0 ,names=cols_name)
    df2= pd.read_csv(csv2, index_col= 0 ,names=cols_name)
    df_sum = df1 + df2
    display(df_sum)
    
[/code]


CC BY-SA 4.0
2023-02-20T10:01:21.580
93927
2023-02-20T10:01:21.580
43025
93926
answer