电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

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

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

瀏覽:3日期: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 編程
相關文章:
主站蜘蛛池模板: 苹果售后维修点查询,苹果iPhone授权售后维修服务中心 – 修果网 拼装地板,悬浮地板厂家,悬浮式拼装运动地板-石家庄博超地板科技有限公司 | 精密机械零件加工_CNC加工_精密加工_数控车床加工_精密机械加工_机械零部件加工厂 | 天津力值检测-天津管道检测-天津天诚工程检测技术有限公司 | 工业风机_环保空调_冷风机_工厂车间厂房通风降温设备旺成服务平台 | 硬质合金模具_硬质合金非标定制_硬面加工「生产厂家」-西迪技术股份有限公司 | 镀锌方管,无缝方管,伸缩套管,方矩管_山东重鑫致胜金属制品有限公司 | 对夹式止回阀厂家,温州对夹式止回阀制造商--永嘉县润丰阀门有限公司 | 称重传感器,测力传感器,拉压力传感器,压力变送器,扭矩传感器,南京凯基特电气有限公司 | 多功能干燥机,过滤洗涤干燥三合一设备-无锡市张华医药设备有限公司 | 保定市泰宏机械制造厂-河北铸件厂-铸造厂-铸件加工-河北大件加工 | 非标压力容器_碳钢储罐_不锈钢_搪玻璃反应釜厂家-山东首丰智能环保装备有限公司 | 密封圈_泛塞封_格莱圈-[东莞市国昊密封圈科技有限公司]专注密封圈定制生产厂家 | 石家庄救护车出租_重症转院_跨省跨境医疗转送_活动赛事医疗保障_康复出院_放弃治疗_腾康26年医疗护送转诊团队 | 板式换网器_柱式换网器_自动换网器-郑州海科熔体泵有限公司 | 青海电动密集架_智能密集架_密集架价格-盛隆柜业青海档案密集架厂家 | 无刷电机_直流无刷电机_行星减速机-佛山市藤尺机电设备有限公司 无菌检查集菌仪,微生物限度仪器-苏州长留仪器百科 | 防水套管_柔性防水套管_刚性防水套管-巩义市润达管道设备制造有限公司 | 超声波乳化机-超声波分散机|仪-超声波萃取仪-超声波均质机-精浩机械|首页 | 河南橡胶接头厂家,河南波纹补偿器厂家,河南可曲挠橡胶软连接,河南套筒补偿器厂家-河南正大阀门 | 粉末包装机-给袋式包装机-全自动包装机-颗粒-液体-食品-酱腌菜包装机生产线【润立机械】 | 防火门-专业生产甲级不锈钢钢质防火门厂家资质齐全-广东恒磊安防设备有限公司 | 博莱特空压机|博莱特-阿特拉斯独资空压机品牌核心代理商 | 温控器生产厂家-提供温度开关/热保护器定制与批发-惠州市华恺威电子科技有限公司 | 集装袋吨袋生产厂家-噸袋廠傢-塑料编织袋-纸塑复合袋-二手吨袋-太空袋-曹县建烨包装 | 物和码官网,物和码,免费一物一码数字化营销SaaS平台 | 真空泵厂家_真空泵机组_水环泵_旋片泵_罗茨泵_耐腐蚀防爆_中德制泵 | 动库网动库商城-体育用品专卖店:羽毛球,乒乓球拍,网球,户外装备,运动鞋,运动包,运动服饰专卖店-正品运动品网上商城动库商城网 - 动库商城 | 瓶盖扭矩仪(扭力值检测)-百科| 渗透仪-直剪仪-三轴仪|苏州昱创百科| 电销卡_稳定企业大语音卡-归属地可选-世纪通信 | 焊管生产线_焊管机组_轧辊模具_焊管设备_焊管设备厂家_石家庄翔昱机械 | 光伏家 - 太阳能光伏发电_分布式光伏发电_太阳能光伏网 | 刹车盘机床-刹车盘生产线-龙口亨嘉智能装备 | pos机办理,智能/扫码/二维码/微信支付宝pos机-北京万汇通宝商贸有限公司 | 苗木价格-苗木批发-沭阳苗木基地-沭阳花木-长之鸿园林苗木场 | TwistDx恒温扩增-RAA等温-Jackson抗体-默瑞(上海)生物科技有限公司 | 【365公司转让网】公司求购|转让|资质买卖_股权转让交易平台 | 高温链条油|高温润滑脂|轴承润滑脂|机器人保养用油|干膜润滑剂-东莞卓越化学 | 搬运设备、起重设备、吊装设备—『龙海起重成套设备』 | 2-羟基泽兰内酯-乙酰蒲公英萜醇-甘草查尔酮A-上海纯优生物科技有限公司 | 无锡门窗-系统门窗-阳光房-封阳台-断桥铝门窗厂[窗致美] |