作业-python常用库类 numpy+pandas

# -*- coding:utf-8 -*-
# 1,一个四维的数组,以后两维度为单位,计算它们的和,比如一个1*2*3*4的数组,合并后两列,输出合并后的轴的sum
# 实例,输入:[[[[2 7 9 7] [6 6 8 2] [0 0 9 3]][[5 4 1 4][5 7 9 7] [8 4 1 4]] ]] 输出[[59 59]]


# import numpy as np
# a=np.array([[[[2,7,9,7],[6,6,8,2],[0,0,9,3]],[[5,4,1,4],[5,7,9,7],[8,4,1,4]]]])
# b=a.reshape(2,12)
# c=np.array([[sum(b[0]),sum(b[1])]])
#
# print(c)




# 2,在数组[1,2,3,4,5]中相邻两个数字中间插入两个0
# 输入:[1.2.3.4.5.] 输出[1,0,0,0,2,0,0,0,3,0,0,0,4,0,0,0,5]


# import numpy as np
# arr01=np.arange(1,6)
# arr02=np.zeros(17)
# arr02[::4]=arr01
# print(arr02)





# 3,二维矩阵与三维矩阵如何相乘?
# import numpy as np
# A=np.ones((3,3,2,))
# print(A)
# print('-'*50)
# B=np.zeros((3,3))
# B[::]=2
# print(B)
# print('-'*50)
#
# print(B.dot(A))



# 4,怎么交换矩阵的其中两行?比如交换第一二行

# import numpy as np
# arr01=np.arange(0,25).reshape(5,5)
#
# print(arr01)
# print('-'*50)
#
# arr01[[0]],arr01[[1]]=arr01[[1]],[[0]]
#
# print(arr01)


# 5,创建一个10*10的数组,并且边框是1,里面是0

# import numpy as np
# arr01=np.ones((10,10))
# arr01[1:9,1:9]=0
# print(arr01)






# 6,将数组s3中的A和dog替换成XXX;
# s3=pd.Series(['A','B','C','Aaba','Baca','',np.nan,'CABA','dog','cat'])

# import pandas as pd
# import numpy as np
# s3=pd.Series(np.array(['A','B','C','Aaba','Baca','',np.nan,'CABA','dog','cat']))
# s3[0]='XXX'
# s3[8]='XXX'
# print(s3)





# 7,pattern=r'[a-z][0-9]'
# s=pd.Series(['1','b2','3a','3b','c2c'])
# s.str.contains(pattern)
# 请在不运行代码的状态下,输出以上代码运行的结果.


# import pandas as pd
# import re
#
# pattern=r'[a-z][0-9]'
# s=pd.Series(['1','b2','3a','3b','c2c'])
# print(s.str.contains(pattern))

# 运行结果:
# 0 False
# 1 True
# 2 False
# 3 False
# 4 True
# dtype: bool



# 8,将附件中的数据导入DataFrame中,实现以下操作:
# 1,对异常数据(数值为0)进行值替换,替换为当前列的平均值;
# 2,对zwyx列的数据进行平均值统计,其他列做计数统计(提示使用value_counts());
# 3,得到zwmc字段的唯一值列表;
# 4,通过group函数,实现对于dd字段的分组,并按照城市计算每个城市的最大薪资,使用折线图,显示Top10城市(选做)

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib as mpl


ca=pd.read_csv('ca_list_copy(2).csv')

cas=ca.replace({0.0:ca['zwyx'].mean()})

print('zwyx:平均值:',ca['zwyx'].mean())
col=list(cas.columns)
col.remove('Id')
col.remove('zwyx')

new_df=pd.DataFrame()
for i in col:
result=cas[i].value_counts()
re=pd.DataFrame(result)
re.columns=['values']
new_df=pd.concat([new_df,re])
print(new_df)


only_value=list(cas['zwmc'].unique())
print('唯一值列表:%s'%only_value)


mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False

data=cas.groupby('dd')['zwyx'].max().sort_values(ascending=False).head(10)
data.index.name='地区'
print(data)

data.plot()
plt.show()

转载于:https://www.cnblogs.com/gwj23/p/10604448.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/411930.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ICE专题:ICE起步

ICE初步 最早开始接触ICE是在2005,3月份,当时一个朋友向另一个正打算研究corba的朋友强烈的推荐了ICE. 参考:http://www.zeroc.com/ 1.什么是ICE? ICE(internet communications engine)是适用于异种环境的面向对象中间件平台。 那么什么是中间件呢? 比较流行的定义是:中间件是…

[vue] 你有使用做过vue与原生app交互吗?说说vue与ap交互的方法

[vue] 你有使用做过vue与原生app交互吗?说说vue与ap交互的方法[vue] 你有使用做过vue与原生app交互吗?说说vue与ap交互的方法 我的做法就是让app在webview把app的方法暴露在window上让前端调用、反之app调用前端的方法也需要前端把方法暴露在window上(w…

[vue] 使用vue写一个tab切换

[vue] 使用vue写一个tab切换 v-for循环&#xff0c;利用下标和v-show显示<div id"app"><ul class"tabs"><li class"li-tab" v-for"(item,index) in tabsParam" click"toggleTabs(index)" :class"index…

subversion安装与配置备忘录

subversion安装与配置备忘录 前两天给公司安subversion,总是出问题,今天总结一下整个过程,以备将来遗忘.下边是我对在网上的一些文章的添加和补充基础上写的. 我是安装windows版本的subversion,所以先把linux下的简介一下: 1.下载httpd-2.0.*.tar.gz(http://www.apache.org)源代…

html5 拖拽上传文件时,屏蔽浏览器默认打开文件

参考&#xff1a; https://www.cnblogs.com/kingsm/p/9849339.html 转载于:https://www.cnblogs.com/cwxwdm/p/10605529.html

[vue] vue中什么是递归组件?举个例子说明下?

[vue] vue中什么是递归组件&#xff1f;举个例子说明下&#xff1f; 组件自己调用自己&#xff0c;场景有用于生成树形结构菜单个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通…

oracle仲裁磁盘是一块磁盘吗,基于ASM冗余设计的架构,仲裁磁盘组应该如何去规划?...

ASM使用独特的镜像算法&#xff1a;不镜像磁盘&#xff0c;而是镜像盘区。作为结果&#xff0c;为了在产生故障时提供连续的保护&#xff0c;只需要磁盘组中的空间容量&#xff0c;而不需要预备一个热备(hot spare)磁盘。不建议用户创建不同尺寸的故障组&#xff0c;因为这将会…

如何判断SVG事件对象中的鼠标来源?

在SVG中会经常遇到判断鼠标事件来源的问题&#xff0c;比如&#xff1a;鼠标单击或者双击、滚轮事件等等。这里做一个简单的介绍。 判断鼠标是左键还是右键&#xff1f; 在onclick事件中&#xff0c;if(evt.button0)则为左击&#xff0c;否则为右击 无论单击还是双击evt.detail…

电商 APP 下单页(俗称车2) 业务流程概要设计

购物车是电商APP的一个关键功能点&#xff0c;一般购物车包含 3&#xff5e;4 个页面&#xff0c;分别是&#xff1a; 1.购物车的商品列表页 2.商品下单页 3.订单付款页面 4.订单付款成功页面 由于现有购物车逻辑相对混乱&#xff0c;这里重新整理一下商品下单页的业务流程设计…

[vue] 怎么访问到子组件的实例或者子元素?

[vue] 怎么访问到子组件的实例或者子元素&#xff1f; this.$refs个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

php求数组交集的自定义函数,php数组交集函数

在数学中的交集运算&#xff0c;大家在学习的时候还是比较轻松的。我们在php数组里&#xff0c;可以借助array_intersect()函数对两个数组求交集&#xff0c;最后得到一个想要的交集数据。在正式开始array_intersect()使用前&#xff0c;我们需要先对函数的概念、语法、参数、返…

DNS溢出内测

编译的两个版本/Files/allyesno/DNS.rar 转载于:https://www.cnblogs.com/allyesno/archive/2007/05/28/762460.html

工作374-前端margin:0 auto为什么会失效

1.要给居中的元素一个宽度&#xff0c;否者无效。 2.该元素一定不能浮动&#xff0c;否者无效。 3 在HTML中使用标签&#xff0c;需考虑好整体构架&#xff0c;否者全部元素都会居中的。 4.display&#xff1a;table&#xff0d;cell display:table-cell属性指让标签元素以…

Hessian之简单使用

以下是简单的hessian服务代码&#xff1a; 1.导包 <dependency> <groupId>com.caucho</groupId> <artifactId>hessian</artifactId> <version>4.0.38</version></dependency> 2.编写HessianServerProxyExporter类&#…

aix 7 oracle 10g,在64位aix上安装oracle10g

在aix中安装oracle比linux要方便许多,不需要先设置什么内核参数.设置好oracle用户,组,这些与在linux上安装一样.分配空间,在profile中设置bin目录的路径,oracle_home变量,这些常规的配制就不多说了,大同小异.在aix中,oracle提供了一些工具,可以拿来做安装前的检查工作.工具是va…

为什么我也开博

为什么我也开博&#xff1f;其实很早就想写点东西了&#xff0c;可是一直没有时间&#xff0c;不过&#xff0c;现在想想即使当时写了&#xff0c;还真不知道写点什么。是工作这几个月来的一些经历&#xff1f;还是学习当中的一些小技巧&#xff1f;还是刚刚进入这个行业的困惑…

[vue] 在组件中怎么访问到根实例?

[vue] 在组件中怎么访问到根实例&#xff1f; 通过this.$root个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

2016 hctf fheap 题解

题目链接 https://github.com/zh-explorer/hctf2016-fheap 题目分析 题目功能只有 malloc 和 free 的功能&#xff0c;查看堆的布局&#xff1a; 全局指针没有置空&#xff0c;导致 uaf 和 double free 漏洞&#xff0c;两种都可以做&#xff0c;但是这题的重点是绕过 PIE。 do…

[vue] 在子组件中怎么访问到父组件的实例?

[vue] 在子组件中怎么访问到父组件的实例&#xff1f; 通过this.$parent个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

linux 文件拆分 合并,Linux下文件的切分与合并的简单方法

linux下文件分割可以通过split命令来实现&#xff0c;可以将一个大文件拆分成指定大小的多个文件&#xff0c;并且拆分速度非常的快&#xff0c;可以指定按行数分割和安大小分割两种模式。Linux下文件合并可以通过cat命令来实现&#xff0c;非常简单。在Linux下用split进行文件…