1.读取csv文件
data=pd.read_csv('data.csv',encoding = "utf-8",header = 0,names = range(0,50),index_col=0)

header = 0是默认情况(即不标明,默认就是header = 0),表示以数据的第一行为列索引。
encoding = "utf-8"表明以utf-8为编码规则。
names = range(0,50))表示以[0…49]为列索引的名字
index_col=0表示以原有数据的第一列(索引为0)当作行索引。

2.处理NAN缺失值函数
df.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs)

value为填充值;
axis: {0 or ‘index’, 1 or ‘columns’}
例:用均值填充NAN:

data.fillna(data.mean(),inplace=True)
3.获取指定几列
data1=data[['列名1','列名2','列名3']]
4.判断是否存在缺失值函数
data.isnull()
5.获取描述值(count,mean,std,max,min等)
data.describe()
6.解决图形中文无法显示问题
plt.rcParams['font.sans-serif']=['SimHei']   # 用黑体显示中文
plt.rcParams['axes.unicode_minus']=False #优化坐标轴显示问题
7.绘制描述值散点图
import matplotlib.pyplot as plt
sta=data.describe()plt.scatter(sta.loc['max'].index,sta.loc['max'],color='k',marker='v')
plt.scatter(sta.loc['min'].index,sta.loc['min'],color='k',marker='^')
plt.scatter(sta.loc['mean'].index,sta.loc['mean'],color='b',marker='+')
plt.scatter(sta.loc['50%'].index,sta.loc['50%'],color='b',marker='x')
plt.scatter(sta.loc['75%'].index,sta.loc['75%'],color='r',marker='v')
plt.scatter(sta.loc['25%'].index,sta.loc['25%'],color='r',marker='^')plt.xticks([i for i in range(4)]) #防止右上角描述显示覆盖散点
plt.legend(['max','min','mean','median','75%','25%'])
plt.show()

8.增加一列并指定公式
data.loc[:,'增加列名']=data1['已存在列1']-data1['已存在列2']
9.获取pearson相关系数判断相关性
cor = data.corr()
10.增加x轴y轴标签
plt.xlabel('x')
plt.ylabel('y')
11.显示绘图标注
plt.legend(['玛卡巴卡'])
12.获取某列为指定值的数据集
data1=data[data['sex']==1]
13.获取某列均值
data.mean()
14.获取某列标准差
data.std()
15.随机拆分DataFrame为大小相等的df
import numpy as np
shuffled = data.sample(frac=1)
data4=np.array_split(shuffled, 2)
print(data4[1])
16.绘制阶梯图
plt.step(x, y)
17.绘制直方图
plt.hist(data,bins=25, density=True, stacked=True,color='y')
18.map函数使用
map(lambda x: x ** 2, [1, 2, 3, 4, 5])  # 使用 lambda 匿名函数
19.plt设置图形名称
plt.title('玛卡巴卡图')
20.删除指定列、行
data=data.drop(columns=['列名1','列名1'])
data=data.drop(index=['行名1','行名1'])
21.输出数据前10行
data.head(10)
22.pd.set_option
# 使用pd.set_option设置只显示DataFrame最多10行样本,中间部分样本用省略号略过。
pd.set_option('display.max_rows',10)
data
23.删除名为‘#’的列
del df['#']
24.利用rename()修改列名,参数为字典
df.rename(columns=new_name,inplace='True')
25.查看某列数据的唯一值
# 法1
df['列名'].unique()
# 法2
df['列名'].value_counts()
26.选取指定类型值的列名
#标称型特征
nominal_array=(data.select_dtypes(include=['object'])).columns.tolist()#数值型特征
numerical_array=(data.select_dtypes(exclude=['object'])).columns.tolist()
27.删除包含缺失值的样本
new_data=all_data.dropna(axis=1)
28.统计行数
#统计行数
row_num=all_data.shape[0]
29.获取各字段名称
#统计行数
col_array=all_data.columns.tolist()
30.plt绘制直方图
plt.rcParams['font.sans-serif']=['SimHei']   # 用黑体显示中文
plt.rcParams['axes.unicode_minus']=False #优化坐标轴显示问题plt.hist(all_data['G1'], bins=40, facecolor="blue", edgecolor="black", alpha=0.7)
# 显示横轴标签
plt.xlabel("G1")
# 显示纵轴标签
plt.ylabel("成绩")
# 显示图标题
plt.title("G1成绩分布直方图")
plt.show()

31.truncate()选取df子集
truncate()常用参数有after和before,可传入标签。after之后的数据将全部删除,before之前的数据将全部删除。
32.dateutil.parser时间解析函数
from dateutil.parser import parse
parse('2018-5-2')

datetime.datetime(2018, 5, 2, 0, 0)

parse('May 2, 2018 10:30 AM')

datetime.datetime(2018, 5, 2, 10, 30)

33.绘制df某一列数据饼图

当数据类别较少时可以使用饼图

data['列名'].value_counts().plot(kind='pie',fontsize=14,autopct='%.1f%%',labels=['指定显示类别名'])

遇到数据类别较多,各块的比例和各块的标注重叠情况,可以增加如下参数:

pctdistance参数调整各比例数据离饼图中心的距离,pctdistance=1.1;
更改figsize参数将图变大,figsize=(7,7);
设定legend参数为True将饼图中各块的标注用图例表示,legend=True。

34.绘制df某一列数据条形图

当数据类别较多时可以使用条形图

ax = data['列名'].value_counts().plot(kind='bar',figsize=(9,6),rot=0,color=['pink','lavenderblush','cyan','hotpink','red','darkcyan'])

可以使用patches查看plot的输出的一系列图块:

ax.patches


在每一个图块的部分中,存储着相应的数据,使用get_height方法获取这些数据。

ax.patches[0].get_height()

对应的图块在条形图中x轴上的位置,使用get_x。

ax.patches[0].get_x()
35.绘制df某一列数据直方图

对于连续型变量,可以使用直方图来查看数据的分布情况,这时需要设定参数kind为hist

data['列名'].plot(kind='hist')

默认画的是频数图,如果想画频率图,可以修改参数density为True。

data['列名'].plot(kind='hist',density=True)

也可以调整cumulative参数为True绘制累积直方图。

data['列名'].plot(kind='hist',cumulative=True)
36.绘制df某一列数据箱线图

也可以使用箱线图查看连续型变量的分布情况,需要设定kind参数为box

data['列名'].plot(kind='box')

可以通过sym参数修改异常值点的颜色和标记样式。例如,将颜色改为绿色(green),样式改为十字叉。

data['列名'].plot(kind='box',sym='g+')

可以通过修改箱线图的return_type参数为dict使得绘图函数返回一个字典,这可以让方便地从图中提取一些数据。

box=data['列名'].plot(kind='box',return_type='dict')
box

'boxes’对应的是箱体部分,'fliers’对应的是异常值点,'whiskers’对应的是两条须。

box['boxes']#查看箱体部分
box['boxes'][0]#提取列表第一个元素获得相应的图块
box['boxes'][0].get_xydata()#使用get_xydata获取其对应的数据点
box['fliers'][0].get_ydata()#使用get_ydata获取对应的异常值
37.使用iterrows循环df
for index, row in data.iterrows():print(row['列名1'])
38.更改列名
name_dict={}
data.rename(columns=name_dict,inplace=True)    # inplace参数判断是否在原数据上进行修改
39.查看数据基本信息
data.info()
40.计算缺失值比例
p = data.isnull().sum()/len(data)
# 转变为百分数
data.apply(lambda x: format(x, '.1%'))
# 保留两位小数
data.apply(lambda x: format(x, '.2f'))
41.数据类型转换
data['列名1']=data['列名1'].astype('float')
42.根据某一列降序排序
data.sort_values('列名1',ascending=False,inplace=True)
43.设置某一列为新索引
data.set_index('列名1',inplace=True)
44.绘制水平条形图
data.plot.barh(subplots=True,layout=(1,3),sharex=False,figsize=(7,4),legend=False,sharey=True)
# layout参数为显示图形为1行,3列
plt.tight_layout()   #调整子图间距
plt.show()
45.绘制饼图
data.plot.pie(autopct='%.1f%%',fontsize=10,ax=ax[1])
46.利用pyecharts中的Map()绘图
import pyecharts
# 调整配置项
import pyecharts.options as opts
# Map类用于绘制地图
from pyecharts.charts import Mapmap_ = Map().add(series_name = " ", # 设置提示框标签data_pair = data, # 输入数据(列表类型)maptype = "world", # 设置地图类型为世界地图is_map_symbol_show = False # 不显示标记点)
# 设置系列配置项
map_.set_series_opts(label_opts=opts.LabelOpts(is_show=False))  # 不显示国家(标签)名称
# 设置全局配置项
map_.set_global_opts(title_opts = opts.TitleOpts(title=" "), # 设置图标题# 设置视觉映射配置项visualmap_opts = opts.VisualMapOpts(pieces=[ # 自定义分组的分点和颜色{"min": 10000,"color":"#800000"}, # 栗色{"min": 5000, "max": 9999, "color":"#B22222"}, # 耐火砖{"min": 999, "max": 4999,"color":"#CD5C5C"}, # 印度红{"min": 100, "max": 999, "color":"#BC8F8F"}, # 玫瑰棕色{"max": 99, "color":"#FFE4E1"}, # 薄雾玫瑰], is_piecewise = True))  # 显示分段式图例
# 在notebook中进行渲染
map_.render_notebook()
47.利用pyecharts中的Pie()绘图
from pyecharts.charts import Piepie = Pie().add(" ", # 添加提示框标签data, # 输入数据radius = ["20%", "80%"],  # 设置内半径和外半径center = ["60%", "60%"],  # 设置圆心位置rosetype = "radius")   # 玫瑰图模式,通过半径区分数值大小,角度大小表示占比#设置全局和系列配置项并绘制玫瑰图
pie.set_global_opts(title_opts = opts.TitleOpts(title=" ",  # 设置图标题pos_right = '40%'),  # 图标题的位置legend_opts = opts.LegendOpts( # 设置图例orient='vertical', # 垂直放置图例pos_right="85%", # 设置图例位置pos_top="15%"))pie.set_series_opts(label_opts = opts.LabelOpts(formatter="{b} : {d}%")) # 设置标签文字形式为(国家:占比(%))# 在notebook中进行渲染
pie.render_notebook()
48.随机选取5行索引
index=np.random.choice(data.index,size=5)

pandas处理df函数及plt绘图函数(作业总结笔记待补充...)相关推荐

  1. python绘图函数教程_Python绘图函数的完整集合,python,画图,大全

    很多时候,我们需要用python画图,这样就可以更加直观的看到数据的走势,而不是干巴巴的数字. 今天,我们就给大家整理了一下python画图的常用函数,由于篇幅限制.无法将这些函数的使用方法全部表现出 ...

  2. 一览R基础包的六个高级绘图函数(盒型boxplot|条形barplot|直方hist|饼pie|dotchart|coplot)...

    除了数理统计,今天我们继续聊一下R语言的另一个任务:绘图. 注意:我们公众号的每一次发文尽量列出一个小系列.如果九阳神功有10层,能以一篇文章写10层,绝不一篇写一层.分散写10篇,追求字典.工具的性 ...

  3. OpenCV学习笔记(二十一)——绘图函数core OpenCV学习笔记(二十二)——粒子滤波跟踪方法 OpenCV学习笔记(二十三)——OpenCV的GUI之凤凰涅槃Qt OpenCV学习笔记(二十

    OpenCV学习笔记(二十一)--绘图函数core 在图像中,我们经常想要在图像中做一些标识记号,这就需要绘图函数.OpenCV虽然没有太优秀的GUI,但在绘图方面还是做得很完整的.这里就介绍一下相关 ...

  4. 【计算机图形学课程】一.MFC基本绘图函数使用方法

    这是最近我<计算机图形学>课程实践编程课介绍的相关知识,主要是想通过MFC C++绘图,让学生体会下图形学相关的编程及简单的图形绘制,同时非常佩服学生的想象力,他们做得真的不错.希望这篇基 ...

  5. graphics | 基础绘图系统(五)——plot函数功能再探和低级绘图函数

    plot函数虽然主要用于绘制散点图和折线图,但它实际上是一个比较全能的函数.本篇就介绍如何使用plot函数绘制其他类型的图形.另外,上篇介绍的高级绘图函数如boxplot.barplot等都有参数ad ...

  6. matlab 高级绘图函数

      matlab高层绘图函数即是指Matlab提供了一系列的绘图函数,这些绘图函数使得用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形.与高级绘图函数的相对的是,低级绘图函数,这 ...

  7. WIN32 API:绘图函数

    二.创建GDI绘图对象 今天我们要讨论的是Win32 API中最有有趣的部分───用绘图函数完成图形输出.可以说,所有前面讲的内容都是本课程的前期准备.当时,我们在一些试例程序中偶尔用了一些绘图函数, ...

  8. python三维矩阵可视化_科学计算三维可视化---Mlab基础(基于Numpy数组的绘图函数)...

    Mlab了解 Mlab是Mayavi提供的面向脚本的api,他可以实现快速的三维可视化,Mayavi可以通过Mlab的绘图函数对Numpy数组建立可视化. 过程为: .建立数据源 .使用Filter( ...

  9. matlab绘制两个函数,用matlab程序 在同一图中绘制两个函数,这两个函数分别是: , ,,matlab怎样同时画出两个函数图...

    导航:网站首页 > 用matlab程序 在同一图中绘制两个函数,这两个函数分别是: , ,,matlab怎样同时画出两个函数图 用matlab程序 在同一图中绘制两个函数,这两个函数分别是: , ...

  10. 【python数据分析】用python进行数据探索2(常见matplotlib及pandas绘图函数汇总、对比及拓展)

    绘图函数 绘图函数功能 所属工具箱 plot() 折线图 matplotlib/pandas pie() 饼图 matplotlib/pandas hist() 直方图 matplotlib/pand ...

最新文章

  1. java web dao_JavaWeb项目,DAO应该怎么写?
  2. PCA和白化练习之处理二维数据
  3. 双轴机械臂位置闭环控制:STC8H1K28,42HS48EIS,BH32
  4. GraphQL 进阶: 基于Websocket的实时Web应用开发
  5. CTFshow 文件包含 web81
  6. 了解select模型的六大注意点
  7. 运维人最爱的八本书,送给十一不出门的你
  8. java 获取本机ip_linux获取本机IP
  9. 视频号扩展链接助手小程序功能模块源码v1.5.0
  10. 嵌入式linux的驱动程序
  11. 数学分析 导数的四则运算法则及多个函数的推广
  12. Delphi10.4.1开发Linux应用视频重播
  13. 谷歌SEO长尾关键词挖掘方法
  14. 新浪导航栏下拉菜单案例展示
  15. 微信小程序漂亮按钮(中间矩形两端半圆形)
  16. 屠龙之技 作者:长铗
  17. 前端图片格式与浏览器性能优化
  18. QT 自学内容 day03 listWidget ,treeWidget,tableWidget ,stackedWidget,模态,和非模态 多种 对话框的的使用
  19. 素数p阶群乘法循环群啥意思_如何证明素数阶群都是abel群?
  20. 信奥中的数学 组合篇 相关资料汇总(2022.07.08)

热门文章

  1. css中背景图像移动_深入了解:在CSS中使用编码图像(背景图像)
  2. 搭建Nginx图片or视频服务器
  3. [lua]紫猫lua教程-命令宝典-L1-01-07. table表
  4. Photoshop更换证件照底色
  5. 写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。
  6. 【英语:语法基础】B8.核心语法-并列复合句和主从复合句
  7. android 实现男女按钮选择
  8. 关于activity转场动画makeSceneTransitionAnimation没效果的问题的解决办法
  9. 02 敏捷开发测试流程
  10. 日语 敬体 简体 作文 对话