python多次生成的dataframe数据写入csv文件的同一列
时间: 2023-09-30 17:09:56 浏览: 131
这是一个技术问题,可以回答。你可以使用 pandas 库的 to_csv 方法将多个 dataframe 数据写入同一个 csv 文件的不同列。通过设置 mode='a' 和 header=False,可以实现追加写入数据,而不是每次都覆盖之前的数据。例如:
```python
import pandas as pd
df1 = pd.DataFrame({'col1': [1, 2, 3], 'col2': [4, 5, 6]})
df2 = pd.DataFrame({'col1': [7, 8, 9], 'col2': [10, 11, 12]})
with open('data.csv', mode='a', encoding='utf-8', newline='') as file:
df1.to_csv(file, header=False)
df2.to_csv(file, header=False)
```
这样会将 df1 和 df2 的数据写入到 data.csv 文件的第一列和第二列。
相关问题
python多次生成的dataframe数据都写入csv文件的第一列
可以使用pandas的to_csv方法,并设置参数mode='a',表示追加写入文件而非覆盖原有数据。例如:
```
import pandas as pd
df = pd.DataFrame({'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [20, 25, 30, 35]})
df.to_csv('data.csv', mode='a', index=False, header=False)
```
这样,每次生成的DataFrame数据都会追加写入csv文件的末尾。注意要禁止写入行索引(index=False)和首行表头(header=False)。
python多次生成的dataframe数据都写入csv文件的第一列的代码例子
以下是示例代码:
```python
import pandas as pd
# 生成三个不同的DataFrame
df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
df2 = pd.DataFrame({'A': [5, 6], 'B': [7, 8]})
df3 = pd.DataFrame({'A': [9, 10], 'B': [11, 12]})
# 将三个DataFrame写入同一个CSV文件的不同行
with open('output.csv', 'w') as f:
df1.to_csv(f, header=True, index=False)
df2.to_csv(f, header=False, index=False)
df3.to_csv(f, header=False, index=False, mode='a')
```
这段代码中,我们首先使用Pandas生成了三个不同的DataFrame(df1、df2、df3),然后使用`to_csv`方法将它们写入同一个CSV文件(output.csv)。其中,第一个DataFrame需要写入CSV文件的第一行,因此我们在写入时将`header`参数设置为True;后续的DataFrame需要写入CSV文件的后续行,因此我们将`header`参数设置为False,并指定`mode='a'`以追加的方式写入文件。最终生成的CSV文件应该类似如下:
```
A,B
1,3
2,4
5,7
6,8
9,11
10,12
```
阅读全文