2024-03-29 05:41:42 发布
网友
我有一个n列的数据帧。一个是城市名称。你知道吗
我试图提取每一行(s)的基础上城市名称和打印到一个新的CSV文件。你知道吗
col1 col2 cityName a 5 Madrid s 10 NEWYORK d 0 London f 2 Berlin
回答:
第一个csv文件:
col1 col2 cityName a 5 Madrid
第二个csv文件:
col1 col2 cityName s 10 NEWYORK
您可以按cityName列对行进行分组,然后将每个组导出为单独的csv,如下所示:
编辑:将保存结果添加到csv文件
编辑:添加所有文件
import zipfile import pandas as pd df = pd.DataFrame( data={'col1': ['a', 's', 'd', 'f', 'x'], 'col2': [5, 10, 0, 2, 4], 'cityName': ['Madrid', 'NEWYORK', 'London', 'Berlin', 'Madrid']}) groupby = df.groupby('cityName') out_zip = zipfile.ZipFile("58377674.zip", "w") for n, g in groupby: print(n) csv = g.to_csv(index=False) print(csv) csv_filename = "{}.csv".format(n) with open(csv_filename, 'w') as out_file: out_file.write(csv) out_zip.write(csv_filename)
此代码将遍历任何数据帧(如果存在),并创建一个包含列标题和行的新csv文件(对于每一行),否则如果数据帧不存在,它将不执行任何操作。你知道吗
import pandas as pd i=0 while True: try: df.iloc[[i]].to_csv("filename.csv") i = i+1 except: pass
下面的代码将生成一个CSV文件,并在其中写入一行。您可以迭代这个代码直到最后一条记录,每次它都会生成一个唯一的数据文件。你知道吗
import csv from datetime import datetime for index, row in dataframe.iterrows(): filename = datetime.now() filename = filename.strftime("%d-%m-%Y_%H:%M:%S") file = open('data_'+str(filename)+'.csv', 'w') w = csv.writer(file) w.writerow([row['col1'], row['col2'], row['cityName']]) file.close()
您可以按cityName列对行进行分组,然后将每个组导出为单独的csv,如下所示:
编辑:将保存结果添加到csv文件
编辑:添加所有文件
此代码将遍历任何数据帧(如果存在),并创建一个包含列标题和行的新csv文件(对于每一行),否则如果数据帧不存在,它将不执行任何操作。你知道吗
下面的代码将生成一个CSV文件,并在其中写入一行。您可以迭代这个代码直到最后一条记录,每次它都会生成一个唯一的数据文件。你知道吗
相关问题 更多 >
编程相关推荐