python环境下数据操作_数据分析环境搭建和Python基础知识
搭建数据分析环境主要包括使用anaconda管理包和环境;使用Jupyter notebook将说明文本、数学方程、代码和可视化内容全部组合到一个易于共享的文档中。Python基础知识包括关键点(数据类型、for循环、条件判断、函数)、模块和包、数据结构(队列、栈、排序字典、计数器)
一、环境搭建
一、anaconda
1.管理包:
conda list:列出已安装包
conda install pandas或pip install pandas:安装Pdans包
conda remove pandas:卸载包
conda update package_name:更新包
conda upgrade --all:更新所有包
conda search pandas:查找包
注:python环境、conda、anaconda也可看做包
2.管理环境
conda install nb_conda:安装nb_conda用于notebook自动关联nb_conda的环境。
(1)创建环境
conda create -n env_name package_names:env_name 是设置环境的名称(-n 是指该命令后面的env_name是你要创建环境的名称),package_names 是你要安装在创建环境中的包名称。
conda create -n py3 python=3 :创建名为py3的环境,同时指定python版本
(2)进入环境
activate my_env:
(3)离开环境
deactivate
(4)共享环境
conda env export > environment.yaml:以YAML文件形式,导出环境文件到“notebook工作文件夹”
conda env update -f=/path/to/environment.yml:在conda环境下更新
pip freeze > environment.txt:以txt文件形式,导出环境文件到“notebook工作文件夹”
pip install -r /path/requirements.txt:在python环境下更新
(5)列出环境
conda env list:列出创建的所有环境
(6)删除环境
conda env remove -n env_name
或conda remove -n env_name --all
3.报错处理
(1)创建环境报错时出现CondaHTTPError,详情如下图:
解决方法:
在conda安装好之后,默认的镜像是官方的,将官方镜像改为清华的的镜像。然后在用户home目录下,找到 .condarc 文件,以txt形式打开,删掉channels下面的 -defaults一行
二、Jupyter notebook
Jupyter notebook(http://jupyter.org/) 是一种 Web 应用,能让用户将说明文本、数学方程、代码和可视化内容全部组合到一个易于共享的文档中。
1.环境搭建
conda install jupyter notebook或pip install jupyter notebook:在conda环境中安装jupyter notebook
conda install nb_conda:将conda中创建的环境自动关联到notebook中
conda install pyreadline:代码自动补全包(输入代码时按TAB键可自动补全)
2.启动
(1)windows开始菜单找notebook打开
(2)在终端输入 jupyter notebook,启动notebook服务器后,在浏览器中打开notebook页面地址:http://localhost:8888
3.操作
界面介绍files (文件)当前notebook工作文件夹中的所有文件和文件夹,running(运行)所有正在运行的notebook,管理notebook, cluster(集群)一般不会用,创建多个并行计算的内核
创建新的notebook,file-new-选择我已创建的环境py3,会弹出新的窗口,输入代码,ctrl+enter执行,
代码自动补全功能:输入部分代码后按tab键,可以联想带出
notebook重命名:file-rename或双击现有名称
运行所有代码:kemel-restart&run all
4.保存
查看已保存的文件:我的路径是C:\用户\hty,保存的的扩展名为.ipynb的文件
共享notebook:在notebook中file-download as:
(1)HTML文件:和客户分享我的数据分析成果
(2)python(.py):将数据分析成果嵌入到项目中
(3)markdown:在博客或文档中使用notebook
5.导入
upload-选择文件-上传
6.关闭
关闭notebook:首先保存notebook,在file选中文件复选框,单击close and Halt
关闭jupyter notebook:在终端按两次ctrl+c
二、掌握Python的4个关键点
1.数据
(1)字符串(String)
#定义字符串
Str1='python3'
Str2='数据分析'
#用%s格式化字符串
str='使用%s,进行%s' % ('Python3','数据分析')
(2)数值(Number)
#整型(Int)
str1=10
#浮点型(float)
str2=10.0
#复数 (complex)
str3=3.14j
(3)列表(List)
列表可以完成大多数集合类的数据结构实现。
#定义列表
skillList=['Excel','Python','Mysql','SPSS']
#列表长度
skillListLen=len(skillList)
#操作:增加
nameList.append('SAS')
#操作:删除
del skillList[1]
#操作:查询
skill1=skillList[0]
注:使用下标索引来访问列表中的值
skill2=skillList[1:3:1]
注:查找表中第2到3个元素(左闭右开),步长为1,
#操作:修改
nameList[0]='PyCharm'
(4)集合(Sets)
基本功能是进行成员关系测试和删除重复元素。
#定义集合
gafataSets={'腾讯','阿里巴巴','苹果','谷歌','Facebook','亚马逊','亚马逊'}
#操作:增加
stockSets=set()
stockSets.update(['腾讯','阿里巴巴','京东'])
注意定义空集合需使用set(),如stockSets=set()
#操作:删除
stockSets.discard('京东')
#操作:查询
txBool='腾讯' in stockSets
#操作:修改
stockSets.discard('京东')
stockSets.update(['京东'])
注意:先删除,再添加
(5)字典(Dictionary)
#定义字典
patientDict1={'01':'张一','02':'张二','03':'张三','04':'张四'}
patientDict2={'01':['张一','19','2型糖尿病', '好转'],
'02':['张二','29','1型糖尿病', '未见好转'],
'03':['张三','31','2型糖尿病', '显著好转'],
'04':['张四','25','1型糖尿病', '好转'],}
#操作:增加
patientDict2['05']=['张五','25','1型糖尿病', ‘显著好转']
#操作:修改
patientDict2['01']=['张一','19','2型糖尿病', '显著好转']
#容器操作:查询
patientList1=patientDict2['01']
注:根据key值查询
(6)布尔类型(bool)
True、False
注意:首字母大写;进行数值运算时True视为1,False视为0
(7)空值(None)
age=None
None在逻辑判断中为False
2.条件判断
#逻辑判断
scoreNum=9.1
if scoreNum >= 8:
print("我要去看这部电影")
else:
print("我不要去看这部电影")
#边界条件判断
nameList=['张一','张二','张三','张四']
if '张五' not in nameList:
print('列表中没有叫张五的病人')
else:
print('列表中有个叫张五的病人')
#多条件判断
age=int(input('请输入狗狗的年龄'))
if age < 0:
print('请重新输入')
elif age == 1:
print('狗狗的年龄是7岁')
elif age == 2:
print('狗狗的年龄是14岁')
else:
print('狗狗的年龄是',22+age*2,'岁')
3.for循环
#for循环
eatList=['吃第1次饭','吃第2次饭','吃第3次饭']
for i in eatList:
print(i)
案例:清洗GAFATA股票数据
#定义字典:6家公司(GAFATA)的股票
#key是公司名称,value是股票代码
gafataDict={'谷歌':'Goog','亚马逊':'aMZN','Facebook':'FB',
'苹果':'aapl','阿里巴巴':'BABA','腾讯':'0700'}
#将股票代码全部大写
for key,value in gafataDict.items():
#对股票代码转换成大写
newvalue=value.upper()
#将转换后新的股票代码赋值给对应的key
gafataDict[key]=newvalue
print(gafataDict)
#continue用于跳出当前循环
for key,value in gafataDict.items():
if(key=='苹果'):
continue
print(key,'当前股票代码为',value)
#break用于退出整个循环
for key,value in gatafaDict.items():
if (key=='腾讯'):
print('查找',key,'公司的代码是',value)
break
else:
print('当前公司:',key,',当前股票代码:',value)
4.函数
#定义函数
def add(x,y):
z=x+y
return z
#使用函数
a=1
b=2
c=add(x=a,y=b)
print('1和2相加等于',c)
# 函数参数:不可变数据类型(仅传递值)
# 函数参数:可变数据类型(传引用地址)
def changeInt(a):
a=a+1
b=1
print('调用函数之前b的值=',b)
changeInt(a=b)
print('调用函数之后b的值=',b)
#变量作用域
#局部作用域:只能在其被声明的函数内部访问
def test():
aStr='别理会他人闲言闲语,今日随他们,让他们说吧,你的机会将会到来,再来证明自己。'
三、模块和包
#引入内置模块sys
import sys
#引入第三方模块pandas
import pandas as pd
#文件路径
fileNameStr='C:\htyi\第2关零基础掌握人工智能核心语言Python\数据\病历数据.xlsx'
#读取excel数据
xl = pd.ExcelFile(fileNameStr)
#获取指定工作表(Sheet)名称的数据
patientDf = xl.parse('Sheet1')
四、数据结构
1.队列
#导入collections包
from collections import deque
#定义队列:排队吃饭人的编号
queue=deque(['001','002','003','04','005'])
#入队:在队列尾部插入元素
queue.append('006')
#出队:在队列头部删除元素
queue.popleft()
2.栈
#定义栈:浏览我个人知乎主页的顺序
stack=deque(['知乎动态','知乎回答','知乎文章'])
print(stack)
#入栈:在栈顶加入元素
stack.append('知乎专栏')
#出栈:将栈顶元素移除
stack.pop()
3.排序字典
#OrderedDict:按照插入key的顺序,对字典排序
from collections import OrderedDict
4.计数器
from collections import Counter
cDict = Counter('有一种鸟是永远也关不住的,因为他们的羽毛太光亮了。羽毛太光亮')
#字符串的出现次数
cDict['亮']
#出现次数最多的3个字符
cDict.most_common(3)
python环境下数据操作_数据分析环境搭建和Python基础知识相关推荐
- python复杂网络点图可视化_数据分析:R与Python怎么选?
作者介绍 知春里@伟仔 不知名数据科学家. 持续写<数据分析>和<数据产品>的系列文章,欢迎关注. 01 选R还是Python? "球鞋是买阿迪还是买耐克?" ...
- 用于python环境下的数据操作_数据分析(一):环境搭建,以及初步操作文件
1.准备工作 ①定义:用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论,对数据加以详细研究和概括总结的过程 ②环境部署,可以再pycharm中做也可以再jupyter中做 ③ju ...
- python变量下划线开头_一日一技:python中下划线在不同位置的作用
在Python的变量名和方法名中,单下划线和双下划线都有各自的含义,有的仅仅是作为约定,用于提示开发人员,而有的则对Python解释器有特殊含义. 你可能有些疑惑,在Python中变量名和方法名中的单 ...
- uboot环境下mmc操作_【记录】将Uboot 2011.06中mmc驱动移植到uboot 1.1.6的过程
[记录]将Uboot 2011.06中mmc驱动移植到uboot 1.1.6的过程 时间:2011-8-14 作者:crifan 联系方式:green-waste (at) 163.com 附上代码: ...
- python对excel数据统计_数据分析EPHS(4)-使用Excel和Python计算数列统计值
前面环境都搞的差不多了,这次咱们进入实战篇,来计算一列的统计值.统计值主要有最大值.最小值.均值.标准差.中位数.四分位数.话不多说,直接进入正题. 本文介绍使用Excel和Python来计算上述统计 ...
- python后端还是数据分析好_数据分析和web后端选哪个 知乎
数据分析和web后端选哪个 知乎以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 数据分析和web后端选哪个 知乎 WEB ...
- 张莉python 玩转数据答案_大学mooc2020年用Python玩转数据课后答案
OLAP的基本概念不包括().A.度量属性B.维C.数据分析D.事务处理 综合国力的主要要素包括地理条件.自然条件.经济实力.人口.科技.军事实力.民族特征.国民的凝聚力. 假定MyClas为一个类, ...
- python将excel数据合并_在Excel中使用Python将每日数据合并为月度数据
我想弄清楚如何将每天的日期组合成特定的月份,并将特定月份内每一天的数据相加.在 注意:我有一个巨大的列表,上面有每天的日期,但是我在这里放了一个小样本来简单地举例说明.在 文件名:(测试.xlsx)在 ...
- 张莉python 玩转数据答案_大学mooc2020年用Python玩转数据作业答案
由命题p:"函数y=是奇函数",与命题q:"数列a,a2,a3,-, a n,-是等比数列"构成的复合命题中,下列判断正确的是() 以下正确命题的序号为_ ...
最新文章
- putty-psftp
- Understanding Design And Development Job Titles--reference
- 【BZOJ3712】Fiolki(并查集重构树)
- 雅虎将于4月底关闭自助式广告测试
- flink shell的local模式(benv与senv的使用+处理报错的解决方案)
- exec和sp_executesql
- python打包库_Python 打包自己的库到 PYPI (可pip安装)
- 改变世界的5大常数,学过数学的人,这一辈子都不会忘记!
- Python2.x 和 Python3.x,如何选择?
- 徐州初中计算机学校排名2015,徐州初中学校排名,徐州重点初中排名详细榜单
- Mysql 行转列,列转行
- linux 红帽6系统下载,Red Hat Enterprise Linux 6.2 ISO 下载
- 升级 python 2.6.6 到 2.7.14 版本(pip工具安装)
- 从零开始学php 光盘,从零开始学PHP(第2版)(含DVD光盘1张)
- 用element-ui的走马灯carousel轻松实现自适应全屏banner图 解决el-carousel默认高度300问题 组件代码
- Ubuntu增加Swap分区大小
- angular第六天
- 芒果DB删除指定日期内数据
- cruzer php sandisk 闪迪u盘量产工具_sandisk量产工具(闪迪U盘量产工具)
- 函数IsValid()
热门文章
- MIMIC-iv官方SQL查询标注(简单基础篇)
- java jpress,使用JPress快速搭建系统
- 图解弗洛伊德算法(每一对顶点之间的最短路径问题)
- markdown教程
- 2014级学生程序设计学习大数据
- h5在线制作平台h5案例分享
- 解析android多语言与自定义字体
- 【论文阅读】3D-CVF: Generating Joint Camera and LiDAR Features Using Cross-View Spatial Feature Fusion for
- c语言输入12行怎么输入,c语言中,定义什么型别的变数能同时储存数字跟字元,怎么输入...
- 怎么简单快速的将多个中文文件转换成英文的名称