csv文件链接

链接:https://pan.baidu.com/s/1-Q9riIfwTWN1AdV2Fb0eVw

提取码:7stb

1.1设置中文以及负数的编码方式,使得其能够正常显示;

#  read

1.2将《tips.csv》文件中的内容进行读取,并赋值给变量tips;

tips = pd.read_csv('d:/tips.csv', encoding='UTF-8')
unicode_minus = False # 解决保存图像是负号'-'显示为方块的问题,或者转换负号为字符串
print("1.2题:n", tips)

1.3输出tips数据的前五行;

df1 = pd.read_csv('d:/tips.csv', encoding='UTF-8', nrows=5)
print("1.3题:n", df1)

1.4将tips的Unnamed: 0列删除;

print("1.4题:n")
df = pd.read_csv('d:/tips.csv', encoding='UTF-8')
del df['Unnamed: 0']
print('Unnamed:0列删除后:n', df)

1.5输出tips的索引为0,2,3的行;

print("1.5题:n", tips.iloc[[0, 2, 3]])

1.6输出tips数据列的统计信息的摘要;

print("1.6题:n")
df = pd.DataFrame(tips)
print('describe=n',df.describe())

1.7将tips同时按照day、time列进行分组,并输出所有同时包含'Thur','Dinner'的信息;

print("1.7题:n", tips.groupby(['day', 'time']).get_group(('Thur', 'Dinner')))

1.8将tips按照sex进行分组,并使用agg聚合同时求出每个数值列的标准差与平均值,并输出;

print("1.8题:n", tips.groupby('sex').agg([np.mean, np.std]))

1.9建立透视表,其中以total_bill为数值区域,time为行标,day为列标,显示统计行与列,统计行与列的标签为“合计”,且出现缺失值由0代替,最终输出;

print("1.9题:n", tips.pivot_table(values='total_bill', index='time', columns='day', margins=True, margins_name='合计', fill_value=0))

1.10此数据仅有一个缺失值,即行为2列为tip的数据,使用线性插值法根据total_bill与tip列数据的关系求出该位置的值,并用此值替换tips的原缺失值,并输出新的tips的前五行

print("1.10题:n")
total_bill = [16.99, 10.34, 23.68, 24.29, 25.29, 8.77, 26.88]
tip=[1.01, 1.66, 3.31, 3.61, 4.71, 2, 3.12]
linear = interpolate.interp1d(total_bill,tip,kind='linear')
plt.plot(linear([16.99, 10.34, 21.01, 23.68, 24.59, 25.29, 8.77, 26.88]), '-.')
print(linear(21.01))
plt.show()
tips = df.fillna(linear(21.01))# 将求出值插入后的新tips
df = pd.DataFrame(tips)
print(df.iloc[[0, 1, 2, 3, 4]])

1.11通过等宽法将'total_bill'列的数据离散化成5部分,并输出数据分布在此5部分的计数结果(即每部分分布了多少个数据)

print("1.11题:n")
s = np.random.rand(20)
cuts = pd.cut(s, 4)
# print(cuts)
print(cuts.codes)
print(pd.value_counts(cuts))

1.12建立两行两列的子图,在第一张图中画数据为tips的'total_bill'列的直方图,并且显示x轴标签为"区间"、y轴标签为"频数/频率",子图标签为"Total bill"

print("1.12题:n")
plt.subplot(2, 2, 1)
data = tips['total_bill']
plt.hist(data, facecolor="blue", edgecolor="black", alpha=0.7)
plt.xlabel("区间", fontproperties='SimHei')
plt.ylabel("频数/频率", fontproperties='SimHei')
plt.title("子图1.Total bill", fontproperties='SimHei')
# plt.show()

1.13在第二张子图中画x轴数据为tips的'total_bill'列,y轴数据为'tip',图形颜色为绿色的散点图,并且显示x轴标签为" total_bill"、y轴标签为" tip",子图标签为" Total bill--tip"

print("1.13题:n")
plt.subplot(2, 2, 2)
x = tips['total_bill']
y = tips['tip']
plt.rcParams['font.sans-serif'] = ['SimHei']#黑体字体
plt.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题,或者转换负号为字符串
plt.scatter(x, y, c='green')
plt.xlabel("total_bill")
plt.ylabel("tip")
plt.title("子图2.Total bill--tip")
# plt.show()

1.14在第三张子图中画x轴数据为time列= 'Dinner'的所有'size'数据,y轴数据为time列= 'Dinner'的所有'total_bill'数据,图形颜色为红色的散点图,并且显示x轴标签为" size"、y轴标签为"total_bill",子图标签为" Size--total_bill"

print("1.14题:n")
plt.subplot(2, 2, 3)
plt.rcParams['font.sans-serif'] = ['SimHei']#黑体字体
plt.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题,或者转换负号为字符串
groups = df.groupby(['time']).get_group(('Dinner'))
x = groups['size']
groups = df.groupby(['time']).get_group(('Dinner'))
y = groups['total_bill']
plt.scatter(x, y, c='red')
plt.xlabel("size")
plt.ylabel("total_bill")
plt.title("子图3.Size--total_bill")
# plt.show()

1.15在第四张子图中画饼图,数据分为四部分,分别为‘male’在'Fri','Sat','Sun','Thur'四种情况下的'total_bill'的总和,并为四部分数据分别加上标签'Fri','Sat','Sun','Thur'。

print("1.15题:n")
plt.subplot(2, 2, 4)
plt.rcParams['font.sans-serif'] = ['SimHei'] # 黑体字体
plt.rcParams['axes.unicode_minus'] = False  # 解决保存图像是负号'-'显示为方块的问题,或者转换负号为字符串
groups1 = df.groupby(['sex']).get_group(('Male'))
groups01 = (groups1['total_bill']).groupby(tips['day'])
x = groups01.sum()
labels = ['Fri', 'Sat', 'Sun', 'Thur']
plt.pie(x, labels=labels, autopct='%.1f%%')
plt.title("子图4.")
plt.show()

运行结果截图:

信号完整性分析大作业_Matplotlib数据可视化 amp; Pandas数据分析 综合实训大作业...相关推荐

  1. ECharts数据可视化(第三章实训)

    实训 实训销售经理能力对比分析 1.训练要点(1)掌握直角坐标系下的网格及坐标轴的配置方法.(2)掌握标题组件与图例组件的配置方法. (3)掌握工具箱组件与详情提示框组件的配置方法. (4)掌握标记点 ...

  2. 数字后端——信号完整性分析

    随着光刻和集成电路制造工艺的不断进步,以及芯片的特征尺寸从深亚微米到纳米的迅速采用,人们一方面因为芯片的功能极大提高而受益,另一方面,当逻辑门的沟道长度减小时,门的开关时间会减小,这意味着输出驱动器上 ...

  3. 信号完整性分析3——阻抗和电气模型

    信号完整性分析3--阻抗和电气模型 常把信号称为变化的电压或变化的电流,在信号完整性总目录中总结出的所有效应都是由模拟信号(那些变化的电压和电流)与 互连线的电气特性之间的相互影响引起的,而与信号相互 ...

  4. 信号完整性分析2——时域与频域

    信号完整性分析2--时域与频域 Date:2020/06/07 2.1 时域 定义: 时域就是真实世界,是唯一实际存在的域 Fclock=1TclockF_{clock}={\frac {1}{T_{ ...

  5. 信号完整性分析7——传输线的物理基础

    信号完整性分析7--传输线的物理基础 传输线定义: 同轴电缆线是一种传输线,多层板中的PCB线条也是一种传输线. 简单地说,传输线是由两条有一定长度的导线组成的. 作用: :在可接受的失真度下, 把信 ...

  6. 高速数字PCB板设计中的信号完整性分析

    随着集成电路输出开关速度提高以及PCB板密度增加,信号完整性(Signal Integrity) 已经成为高速数字PCB设计必须关心的问题之一,元器件和PCB板的参数.元器件在PCB板上的布局.高速信 ...

  7. 【转】《信号完整性分析》个人学习笔记

    http://blog.sina.com.cn/s/blog_70ef2ee90100whl3.html 写在前言:作为一个还在layout门口徘徊的小虾米,贸然记录自己的学习想法是可笑的.但每个人并 ...

  8. python 3d大数据可视化软件_最受欢迎的大数据可视化软件

    最受欢迎的大数据可视化软件 发布时间:2020-05-26 想像阅读书本一样阅读数据流?这只有在电影中才有可能发生. 在现实世界中,企业必须使用数据可视化工具来读取原始数据的趋势和模式. 大数据可视化 ...

  9. 《信号完整性分析》的读书笔记和总结

    对于硬件工程师,有一种说法是,硬件工程师可以分为两类,一种是已经遇到了信号完成性问题.一种是将要遇到信号完成性问题. 在进行PCB板的设计时,对于低速芯片和电路,如果芯片时钟在10MHz以下,一般来说 ...

最新文章

  1. 合肥工业大学—SQL Server数据库实验一:数据库的创建和删除
  2. Java3大框架的学习都是什么
  3. Dubbo 源码分析 - 自适应拓展原理
  4. oracle12c双机热备方案,Oracle 共享磁盘阵列 双机热备 实战 配置教程 配置手册
  5. 6 四大组件之Service
  6. 换种方式去分页(转)
  7. 系统英伟达gpu驱动卸载_绕过CPU,英伟达让GPU直连存储设备
  8. encapsulation java_Java - 封装(Encapsulation)
  9. ajax可以发送文件,通过Ajax上传img时如何发送文件信息
  10. 程序员修炼之道阅读笔记02
  11. 单纯形法只有两个约束条件_教学 | 线性规划 7 :单纯形法的引入
  12. 推荐系列:2008年第10期 总12期
  13. SQL Server 2000/2005/2008 系列产品下载地址
  14. 《头脑王者》--在线排位答题系统构思
  15. BZOJ2794[Poi2012]Cloakroom——离线+背包
  16. 全国计算机网络英语,2007年10月自考试题计算机网络管理全国试卷(国外英语资料).doc...
  17. Android和OpenCV的学习绘制几何图形
  18. 迪普科技“高”在哪里?
  19. 操作系统实验一到实验九合集(哈工大李治军)
  20. 嵌入式linux远程桌面,嵌入式开发配置远程桌面和FTP

热门文章

  1. 数仓如何限制临时数据文件下盘量
  2. Superior Scheduler:带你了解FusionInsight MRS的超级调度器
  3. 寒冬袭来,带你使用Flask开发一款天气查询软件吧
  4. Lua - 空值判断的几种情况
  5. C语言提前结束for循环,[新人求指教]51C语言编程可否用中断令循环结束提早结束...
  6. java jbutton 事件_java-需要JButton事件支持
  7. linux ip to int,linux ip选项处理(二)
  8. Mac软件损坏,无法打开,允许任何来源后依旧损坏
  9. LaTeX常用Debug方法汇总
  10. TikZ绘图示例——尺规作图:线段的任意等分