用pd.DataFrame将df['col1']和一个列表写入csv文件形成id列和content列,代码怎么写
时间: 2024-05-04 19:20:42 浏览: 107
您好!根据您的要求,可以使用以下代码将df['col1']和一个列表写入csv文件,形成id列和content列:
```python
import pandas as pd
# 创建数据集
df = pd.DataFrame({'col1': [1, 2, 3], 'col2': ['a', 'b', 'c']})
lst = ['apple', 'banana', 'orange']
# 将df['col1']和列表lst合并
data = {'id': df['col1'], 'content': lst}
# 将data转换为dataframe,并写入csv文件
df_new = pd.DataFrame(data)
df_new.to_csv('data.csv', index=False)
```
这样就生成了一个id列和content列的csv文件,id列来自于df['col1'],content列来自于列表lst。请注意,保存csv文件时将index设置为False,以避免在文件中生成额外的索引列。
相关问题
python多次生成的dataframe数据写入csv文件的同一列
这是一个技术问题,可以回答。你可以使用 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 文件的第一列和第二列。
import pandas as pd df=pd.read_csv('D:/20230706/sdssSpecPhoto.csv') df1=df.sort_values(by="ra",ascending=True) df2=df1.drop_duplicates(subset=['ra','dec'],keep='first',inplace=False) df3=df2.iloc[:,1:3] df3.to_csv("D:/20230706/sdss_corrdinate1.csv") df4=pd.read_csv("D:/20230706/sdss_ALLWISE.csv",index_col=0)
您已经成功导入了 Pandas 库,并使用 `pd.read_csv` 函数读取了名为 'D:/20230706/sdssSpecPhoto.csv' 的 CSV 文件,将其存储在名为 'df' 的 DataFrame 中。
接下来,您对 DataFrame 'df' 进行了排序操作,按照 'ra' 列的值进行升序排序,并将结果存储在名为 'df1' 的新 DataFrame 中。
然后,您使用 `drop_duplicates` 函数在 'df1' DataFrame 上去除了重复的行,基于 'ra' 和 'dec' 列的值进行判断,并保留第一次出现的行。这一操作的结果被存储在名为 'df2' 的新 DataFrame 中。
接着,您使用 `iloc` 方法从 'df2' DataFrame 中选取了所有行和第1、2列的数据,并将结果存储在名为 'df3' 的新 DataFrame 中。
随后,您使用 `to_csv` 方法将 'df3' DataFrame 中的数据写入到名为 'D:/20230706/sdss_corrdinate1.csv' 的 CSV 文件中。
最后,您使用 `pd.read_csv` 函数读取了名为 'D:/20230706/sdss_ALLWISE.csv' 的 CSV 文件,并将其存储在名为 'df4' 的 DataFrame 中,并将第一列作为索引列。
阅读全文