Supposons que le csv suivant soit local.
sample.csv
id,age,name,money
111,11,sato,1100
222,22,suzuki,20000
333,33,takahashi,330000
444,44,tanaka,440000
555,55,ito,500000
666,66,yamamoto,800000
777,77,nakamura,1000000
Sur cette base, créez un nouveau csv qui satisfait les éléments suivants.
gencsv.py
import pandas as pd
id_list = []
age_list = []
name_list = []
money_list = []
read_csvfile = 'sample.csv'
def stack_data():
global name_list
global id_list
global age_list
global money_list
#Lire les données depuis csv
data = pd.read_csv(read_csvfile)
#Stocker dans chaque liste
for name in data['name']:
name_list += [name]
for i in data['id']:
id_list += [i]
for age in data['age']:
age_list += [age]
for money in data['money']:
money_list += [money]
def generate_csv():
#Remplacez les données acquises dans une trame de données
for i in range(len(name_list)):
df = pd.DataFrame({
'name': name_list[i],
'age': age_list[i],
'money': money_list[i],
},index=[i,])
csv_title = 'personID=' + str(id_list[i]) + '.csv'
#Générer un csv basé sur une trame de données
df.to_csv(csv_title, index=False)
print(csv_title+'A été généré')
print("Tous créés")
stack_data()
generate_csv()
$ python3 gencsv.py
personID=111.csv a été généré
personID=222.csv a été généré
personID=333.csv a été généré
personID=444.csv a été généré
personID=555.csv a été généré
personID=666.csv a été généré
personID=777.csv a été généré
Tous créés
Recommended Posts