

Python3.7.6です。  
リストにデータフレームを追加しようとしているのですが、str型と判断されてしまっているのかうまくいきません。  
実行結果は以下のとおりです。  
filesはfunc関数で読み込むときのファイルパスが入っているリストです。

[code]

    lst = list()
    for i in files:
        lst.append(func(k=files[i]))
    
    TypeError: list indices must be integers or slices, not str
    
[/code]

strなのかを調べても、データフレームのようです。

[code]

    In [10]: type(func(k=files[i]))
    Out[10]: pandas.core.frame.DataFrame
    
[/code]

リストにデータフレームをappendすることは無理なのでしょうか？  
詳しい方、ご回答いただけますと幸いです。

よろしくお願いいたします。


CC BY-SA 4.0
2021-05-12T02:37:08.023
75796
2021-05-18T14:38:27.487
12457
question
python pandas
リストにデータフレームを追加できない


2次元配列にしてみてはどうでしょうか？  
例えばdataframe名をname_dfとします．  
まずdataframeのコラムを取得します．

[code]

    files = list(name_df.columns)
    
[/code]

その後コラムを利用し配列にdataframeの要素を格納していきます．

[code]

    lis = []
    for w,i in enumerate(files):
      lis.append([])
      lis[w].append(name_df[i])      
    
[/code]

これでやりたいことはできますでしょうか？  
いまいちやりたいことが理解できておらず，曖昧な回答かもしれません．  
試してみてください


CC BY-SA 4.0
2021-05-16T14:06:46.350
75876
2021-05-16T16:38:23.027
2021-05-16T16:38:23.027
3060
45332
75796
answer