1.工具和環(huán)境
語(yǔ)言: python3.6
系統(tǒng):win7 64位
數(shù)據(jù)庫(kù):MongoDB
IDE:IPython notebook
2.數(shù)據(jù)加載、存儲(chǔ)與文件格式
pandas 提供了一些用于將表格型數(shù)據(jù)讀取為DataFrame對(duì)象的函數(shù)。
首先看一個(gè)以逗號(hào)分隔的CSV文本文件:
!type user_info.csv #如果是UNIX系統(tǒng),要把'!type'改成'!cat'
,用戶,粉絲,答題,專欄文章,個(gè)人簡(jiǎn)介
0,張佳瑋,1429532,3060,730,公眾號(hào):張佳瑋寫(xiě)字的地方
1,李開(kāi)復(fù),1015013,107,2,
2,黃繼新,810619,782,95,和知乎在一起
3,周源,777991,339,8,知乎 001 號(hào)員工
4,yolfilm,768913,1619,0,發(fā),然后禁,則捍格而不勝。
5,丁香醫(yī)生,759397,243,56,身體上的問(wèn)題,來(lái)問(wèn)丁香醫(yī)生
6,張亮,721254,1437,110,birth of cool
7,張小北,667155,1337,66,電影愛(ài)好者
8,李淼,662989,1172,191,我拉黑的 都是智力發(fā)展有問(wèn)題的
9,朱炫,653648,205,52,悶騷而近妖 微博:大師兄_朱炫
import pandas as pd
df = pd.read_csv('user_info.csv', encoding = 'gb18030') #這里出現(xiàn)了一點(diǎn)中文編碼的問(wèn)題,所以我指定了解碼方式。
df

image.png
再試一下用read_table,需要指定分隔符
df = pd.read_table('user_info.CSV', sep = ',', encoding = 'gb18030')
df

image.png
效果看起來(lái)跟read_csv完全一樣。
注意到這里出現(xiàn)了一欄Unnamed: 0,應(yīng)該是CSV文本文件開(kāi)頭的逗號(hào)引起的,我們可以用del 把這多余的一列刪除。
del df['Unnamed']
df

image.png
成功的刪除了不要的‘Unnamed’。
將數(shù)據(jù)寫(xiě)出到文本格式
df.to_csv('data.csv')
!type data.csv
,用戶,粉絲,答題,專欄文章,個(gè)人簡(jiǎn)介
0,張佳瑋,1429532,3060,730,公眾號(hào):張佳瑋寫(xiě)字的地方
1,李開(kāi)復(fù),1015013,107,2,
2,黃繼新,810619,782,95,和知乎在一起
3,周源,777991,339,8,知乎 001 號(hào)員工
4,yolfilm,768913,1619,0,發(fā),然后禁,則捍格而不勝。
5,丁香醫(yī)生,759397,243,56,身體上的問(wèn)題,來(lái)問(wèn)丁香醫(yī)生
6,張亮,721254,1437,110,birth of cool
7,張小北,667155,1337,66,電影愛(ài)好者
8,李淼,662989,1172,191,我拉黑的 都是智力發(fā)展有問(wèn)題的
9,朱炫,653648,205,52,悶騷而近妖 微博:大師兄_朱炫
重新將DataFrame寫(xiě)出到文本文件中。
此外,還有Json數(shù)據(jù)。
通過(guò)json.loads()將JSON數(shù)據(jù)轉(zhuǎn)化為python形式,json.dumps()則將python形式轉(zhuǎn)化為JSON數(shù)據(jù)。