Python日常用法—將列表信息寫入到csv文件
1.模板
# 編寫數(shù)據(jù)
import csv
data_list = [{'皇馬球員': 'C羅', '號(hào)碼': '7', '國(guó)籍': '葡萄牙'},
{'皇馬球員': '托尼··克羅斯', '號(hào)碼': '8', '國(guó)籍': '德國(guó)'},
{'皇馬球員': '馬塞洛', '號(hào)碼': '12', '國(guó)籍': '巴西'},
{'皇馬球員': '卡里姆·本澤馬', '號(hào)碼': '9', '國(guó)籍': '法國(guó)'},]
# 1.創(chuàng)建csv文件對(duì)象,encoding='utf-8'是設(shè)置編碼格式,newline=''為了防止空行
f = open('hala_madrid.csv', 'w', encoding='utf-8')
# 2.基于文件對(duì)象構(gòu)建csv寫入對(duì)象
csv_write = csv.writer(f)
# 3.構(gòu)建列表頭
csv_write.writerow(['皇馬球員', '號(hào)碼', '國(guó)籍'])
for data in data_list:
# 4.寫入csv文件
csv_write.writerow([data['皇馬球員'], data['號(hào)碼'], data['國(guó)籍']])
文章來源地址http://www.zghlxwxcb.cn/news/detail-613242.html
2.實(shí)例
import pandas as pd
import numpy as np
from collections import Counter
import csv
import pandas as pd
cloumn_names = [] ## 所有列的名稱(首行)
all_cloumn_dict = [] ## 所有的字典 及 次數(shù)
all_counter = [] ## 所有的填充率
all_cloumn_value = [] ## 方便后續(xù)進(jìn)行數(shù)據(jù)寫入
# 讀取csv文件,pandas會(huì)將CSV數(shù)據(jù)的第一行作為表頭
data = pd.read_csv("model_jy_1.csv", header=None)
# print("表格內(nèi)容:")
# print("1111111",data)
for i in data:
cloumn_names.append(i)
# print("首行:",cloumn_names)
all_data = []
for i in cloumn_names:
nan_count = 0 ## 統(tǒng)計(jì) 缺失值 的情況
print("********************* 第", cloumn_names.index(i) + 1, "列情況分布********************")
col_1 = data[i] # col_1 = data["ID"] #獲取一列,用一維數(shù)據(jù)
data_1 = np.array(col_1)
print("列名:", data_1[0])
print("列值:", data_1[1:])
## 離散型取啞變量填充
data_2 = []
if data_1[0] == "C":
data_2 = ['99' if str(i) == 'nan' else i for i in list(data_1)] ## 有則替換,無則使用原先的數(shù)值
## 連續(xù)型取均值填充
if data_1[0] == "I":
temp = []
for j in list(data_1[1:]):
if str(j) != "nan":
temp.append(float(j))
mean_1 = round(np.mean(temp), 4)
data_2 = [str(mean_1) if str(i) == 'nan' else i for i in list(data_1)]
all_data.append(data_2)
print(all_data)
## 字典中的key值即為csv中列名
dataframe = pd.DataFrame({'M 0 ': all_data[ 0 ][1:] ,
'M 1 ': all_data[ 1 ][1:] ,
'M 2 ': all_data[ 2 ][1:] ,
'M 3 ': all_data[ 3 ][1:] ,
'M 4 ': all_data[ 4 ][1:] ,
'M 5 ': all_data[ 5 ][1:] , })
# 將DataFrame存儲(chǔ)為csv
dataframe.to_csv(r"./model_jy_1_填充.csv", mode="a", index=False)
3.python 列表中的元素直接更改、替換
aaa=['馬塞洛','阿扎爾','佩佩','拉莫斯']
bbb=['C羅' if i =='阿扎爾' else i for i in aaa]
bbb
結(jié)果:
['馬塞洛','C羅','佩佩','拉莫斯']
文章來源:http://www.zghlxwxcb.cn/news/detail-613242.html
到了這里,關(guān)于Python日常用法—將列表信息寫入到csv文件、列表中的元素直接更改的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!