从 <class 'pandas.core.frame.Pandas'> 列表构建 DataFrame

And*_*ndy 5 python tuples dataframe pandas

如何从pandas.core.frame.Pandas元素列表构建 pandas DataFrame ?

说明问题的代码示例:

我有下面的数据框:

import pandas as pd     
df = pd.DataFrame({'col1': [1, 2], 'col2': [0.1, 0.2]}, index=['a', 'b'])


   col1  col2
a     1   0.1
b     2   0.2
Run Code Online (Sandbox Code Playgroud)

然后我迭代它以创建行列表:

data_list = []
for row in df.itertuples():
    data_list.append(row)

[Pandas(Index='a', col1=1, col2=0.1), Pandas(Index='b', col1=2, col2=0.2)]
Run Code Online (Sandbox Code Playgroud)

当我检查数据类型时,我得到:

for i in data_list:
    print(type(i))

<class 'pandas.core.frame.Pandas'>
<class 'pandas.core.frame.Pandas'>
Run Code Online (Sandbox Code Playgroud)

如何将这个 data_list 重新构建为 DataFrame?

我尝试过将集合中的计数器转换为字典,但无法使其工作。不清楚这是否是解决问题的最佳方法

yat*_*atu 2

构造pd.DataFrame函数与命名元组完美配合,并且还根据名称构造列:

pd.DataFrame(data_list).set_index('Index')

        col1  col2
Index            
a         1   0.1
b         2   0.2
Run Code Online (Sandbox Code Playgroud)