df = pd.DataFrame(columns=['0', '90', '180', '270']) df.loc[0] = contrast[0] df.loc[1] = dissimilarity[0] df.loc[2] = homogeneity[0] df.loc[3] = energy[0] df.loc[4] = correlation[0] df.loc[5] = asm[0] abb = ['contrast', 'dissimilarity', 'homogeneity', 'energy', 'correlation', 'asm'] for j in range(len(abb)): abb[j] = abb[j] + i[:-4] dfs.append(df.values) index_sum.append(abb) 我想最后将dfs赋给一个新的dafaframe,将index_sum作为新dataframe的index
时间: 2023-10-08 20:14:37 浏览: 90
要将 `dfs` 赋给一个新的 DataFrame,并使用 `index_sum` 作为新 DataFrame 的索引,您可以使用 `pd.DataFrame` 构造函数。下面是一个示例:
```python
import pandas as pd
import numpy as np
dfs = [] # 存储每个 DataFrame 的列表
index_sum = [] # 存储索引的列表
# 迭代过程中添加数据到 dfs 和 index_sum 列表
df_sum = pd.DataFrame(data=np.concatenate(dfs), columns=['0', '90', '180', '270'], index=index_sum)
print(df_sum)
```
在上述示例中,您需要在迭代过程中将每个 DataFrame 添加到 `dfs` 列表,并将对应的索引添加到 `index_sum` 列表。然后,使用 `np.concatenate(dfs)` 将 `dfs` 列表中的所有 DataFrame 沿行方向连接起来,并使用 `pd.DataFrame` 构造函数创建一个新的 DataFrame。最后,您可以设置新 DataFrame 的列名和索引。
请注意,在示例中的 `np.concatenate(dfs)` 将返回一个 NumPy 数组,因此需要使用 `pd.DataFrame` 来创建新的 DataFrame。如果迭代过程中已经将每个 DataFrame 存储为列表,那么可以直接传递给 `pd.DataFrame` 构造函数。
阅读全文