df.value_counts().to_frame().to_excel()在循环中追加存储到新excel表格中
时间: 2024-05-08 16:22:30 浏览: 161
您可以尝试以下代码:
```python
import pandas as pd
# 创建一个空的DataFrame用于存储所有数据
df_all = pd.DataFrame()
# 循环处理每个Excel文件
for filename in filenames:
# 读取Excel文件
df = pd.read_excel(filename)
# 统计每个值的出现次数,并转化为DataFrame格式
df_count = df.value_counts().to_frame()
# 将文件名作为新列加入DataFrame
df_count['filename'] = filename
# 将当前DataFrame追加到所有数据的DataFrame中
df_all = pd.concat([df_all, df_count])
# 将所有数据保存到新的Excel文件中
with pd.ExcelWriter('all_counts.xlsx') as writer:
df_all.to_excel(writer, index=False)
```
这段代码依次处理每个Excel文件,将每个文件中每个值的出现次数统计出来,并将文件名作为新列加入DataFrame中。最后将所有数据保存到一个新的Excel文件中。注意,`pd.ExcelWriter`可以创建一个Excel文件,并在其中写入多个DataFrame,因此可以在循环中使用。
相关问题
df.value_counts().to_frame().to_excel()在循环中怎么追加存储
你可以使用`pandas`的`ExcelWriter`来实现追加写入Excel文件。以下是一个示例代码:
```
import pandas as pd
# 创建一个ExcelWriter对象
writer = pd.ExcelWriter('output.xlsx', engine='xlsxwriter')
# 循环中追加写入数据
for i in range(5):
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
sheet_name = 'Sheet{}'.format(i+1)
df_value_counts = df['A'].value_counts().to_frame()
df_value_counts.to_excel(writer, sheet_name=sheet_name)
# 保存Excel文件
writer.save()
```
在上面的示例代码中,我们首先创建了一个`ExcelWriter`对象,然后在循环中追加写入了数据,最后保存Excel文件。每次调用`to_excel`方法时,我们需要指定`sheet_name`参数,以便将数据写入不同的工作表中。
df.value_counts().to_frame().to_excel()数据怎么追加
如果你想将 `df.value_counts().to_frame().to_excel()` 的结果追加到一个已经存在的 Excel 文件中,你可以使用 `openpyxl` 库来实现。以下是一个简单的示例代码:
```python
import pandas as pd
from openpyxl import load_workbook
# 读取已经存在的 Excel 文件
book = load_workbook('your_existing_file.xlsx')
# 选择要追加数据的工作表
writer = pd.ExcelWriter('your_existing_file.xlsx', engine='openpyxl')
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
# 将数据追加到工作表的末尾
df = pd.DataFrame({'Column1': [1, 2, 3], 'Column2': ['A', 'B', 'C']})
df_counts = df.value_counts().to_frame()
df_counts.to_excel(writer, sheet_name='Sheet1', startrow=writer.sheets['Sheet1'].max_row, index=True, header=False)
# 保存 Excel 文件
writer.save()
```
在这个示例代码中,我们首先使用 `load_workbook` 函数读取一个已经存在的 Excel 文件,并且使用 `pd.ExcelWriter` 函数创建一个 `writer` 对象。接着,我们通过 `dict` 函数将工作表对象转换为字典,方便我们选择要追加数据的工作表。在追加数据的过程中,我们使用 `startrow` 参数来指定追加数据的起始行,这个参数的值为当前工作表最后一行的行号。最后,我们使用 `writer.save()` 函数保存 Excel 文件。
阅读全文