久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

Python Pandas數據分析工具用法實例

瀏覽:4日期:2022-07-06 11:57:24

1、介紹

Pandas是基于Numpy的專業數據分析工具,可以靈活高效的處理各種數據集,也是我們后期分析案例的神器。它提供了兩種類型的數據結構,分別是DataFrame和Series,我們可以簡單粗暴的把DataFrame理解為Excel里面的一張表,而Series就是表中的某一列

2、創建DataFrame

# -*- encoding=utf-8 -*-import pandasif __name__ == ’__main__’: pass test_stu = pandas.DataFrame( {’高數’: [66, 77, 88, 99, 85], ’大物’: [88, 77, 85, 78, 65], ’英語’: [99, 84, 87, 56, 75]}, ) print(test_stu) stu = pandas.DataFrame( {’高數’: [66, 77, 88, 99, 85], ’大物’: [88, 77, 85, 78, 65], ’英語’: [99, 84, 87, 56, 75]}, index=[’小紅’, ’小李’, ’小白’, ’小黑’, ’小青’] # 指定index索引 ) print(stu)

運行

高數 大物 英語0 66 88 991 77 77 842 88 85 873 99 78 564 85 65 75 高數 大物 英語小紅 66 88 99小李 77 77 84小白 88 85 87小黑 99 78 56小青 85 65 75

3、讀取CSV或Excel(.xlsx)進行簡單操作(增刪改查)

data.csv

Python Pandas數據分析工具用法實例

# -*- encoding=utf-8 -*-import pandasif __name__ == ’__main__’: pass data = pandas.read_csv(’data.csv’, engine=’python’) # 使用python分析引擎讀取csv文件 print(data.head(5)) # 顯示前5行, print(data.tail(5)) # 顯示后5行 print(data) # 顯示所有數據 print(data[’height’]) # 顯示height列 print(data[[’height’, ’weight’]]) # 顯示height和weight列 data.to_csv(’write.csv’) # 保存到csv文件 data.to_excel(’write.xlsx’) # 保存到xlsx文件 data.info() # 查看數據信息(總行數,有無空缺數據,類型) print(data.describe()) # (count非空值,mean均值、std標準差、min最小值、max最大值25%50%75%分位數。) data[’新增列’] = range(0, len(data)) # 類似字典直接添加即可 print(data) new_data = data.drop(’新增列’, axis=1, inplace=False) # 刪除列,如果inplace為True則在源數據刪除,返回None,否則返回新數據,不改動源數據 print(new_data) data[’體重+身高’] = data[’height’] + data[’weight’] print(data) data[’remark’] = data[’remark’].str.replace(’to’, ’’) # 操作字符串 print(data[’remark’]) data[’birth’] = pandas.to_datetime(data[’birth’]) # 轉為日期類型 print(data[’birth’])

4、根據條件進行篩選,截取

# -*- encoding=utf-8 -*-import pandasif __name__ == ’__main__’: pass data = pandas.read_csv(’data.csv’, engine=’python’) # 使用python分析引擎讀取csv文件 a = data.iloc[:12, ] # 截取0-12行,列全截 # print(a) b = data.iloc[:, [1, 3]] # 行全截,列1,3 # print(b) c = data.iloc[0:12, 0:4] # 截取行0-12,列0-4 # print(c) d = data[’sex’] == 1 # 查看性別為1(男)的 # print(d) f = data.loc[data[’sex’] == 1, :] # 查看性別為1(男)的 # print(f) g = data.loc[:, [’weight’, ’height’]] # 選取身高體重 # print(g) h = data.loc[data[’height’].isin([166, 175]), :] # 選取身高166,175的數據 # print(h) h1 = data.loc[data[’height’].isin([166, 175]), [’weight’, ’height’]] # 選取身高166,175的數據 # print(h1) i = data[’height’].mean() # 均值 j = data[’height’].std() # 方差 k = data[’height’].median() # 中位數 l = data[’height’].min() # 最小值 m = data[’height’].max() # 最大值 # print(i) # print(j) # print(k) # print(l) # print(m) n = data.loc[ (data[’height’] > data[’height’].mean()) & (data[’weight’] > data[’weight’].mean()), :] # 身高大于身高均值,且體重大于體重均值,不能用and要用&如果是或用| print(n)

5、清Nan數據,去重,分組,合并

# -*- encoding=utf-8 -*-import pandasif __name__ == ’__main__’: pass sheet1 = pandas.read_excel(’data.xlsx’, sheet_name=’Sheet1’) # 讀取sheet1 # print(sheet1) # print(’-------------------------’) sheet2 = pandas.read_excel(’data.xlsx’, sheet_name=’Sheet2’) # 讀取sheet2 # print(sheet2) # print(’-------------------------’) a = pandas.concat([sheet1, sheet2]) # 合并 # print(a) # print(’-------------------------’) b = a.dropna() # 刪除空數據nan,有nan的就刪除 # print(b) # print(’-------------------------’) b1 = a.dropna(subset=[’weight’]) # 刪除指定列的空數據nan # print(b1) # print(’-------------------------’) c = b.drop_duplicates() # 刪除重復數據 # print(c) # print(’-------------------------’) d = b.drop_duplicates(subset=[’weight’]) # 刪除指定列的重復數據 # print(d) # print(’-------------------------’) e = b.drop_duplicates(subset=[’weight’], keep=’last’) # 刪除指定列的重復數據,保存最后一個相同數據 # print(e) # print(’-------------------------’) f = a.sort_values([’weight’], ascending=False) # 從大到小排序weight # print(f) g = c.groupby([’sex’]).sum() # 根據sex分組,再求和 # print(g) g1 = c.groupby([’sex’], as_index=False).sum() # 根據sex分組,再求和,但sex不作為索引 # print(g1) g2 = c.groupby([’sex’, ’weight’]).sum() # 根據sex分組后再根據weight分組,再求和 # print(g2) h = pandas.cut(c[’weight’], bins=[80, 90, 100, 150, 200], ) # 根據區間分割體重 print(h) # print(’-------------------------’) c[’根據體重分割’] = h # 會有警告,未解決,但不影響結果 print(c)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 冷水江市| 深圳市| 丰顺县| 大姚县| 汉川市| 柞水县| 东港市| 三门峡市| 慈利县| 乐山市| 电白县| 东平县| 大田县| 山东| 仁寿县| 屯留县| 台东市| 和政县| 田阳县| 普兰店市| 吴堡县| 聊城市| 台东县| 托克托县| 景洪市| 西丰县| 开阳县| 大化| 阳高县| 遂昌县| 东兰县| 渝中区| 江达县| 延川县| 乌鲁木齐市| 疏附县| 同仁县| 墨玉县| 富民县| 南江县| 徐汇区|