python第一课笔记

# -*- coding: utf-8 -*-
"""
Created on Sun Mar  4 19:35:44 2018


@author: Lenovo
"""








"""
python数据分析 网易云课堂 小蚊子数据分析之 python数据分析实战
一:数据分析概况


什么是数据分析?
数据分析是指采取适当的方法,对收集的数据进行分析,以总结规律、提取有价值的信息,形成
有效结论的过程。


数据分析的方法有很多,基本的分析方法有 对比分析、分组分析、结构分析、分布分析、交叉分析、矩阵分析等
比较高级的方法有回归分析、聚类分析、因子分析、时间序列分析、决策树、神经网络等


不是越高级的方法越好,而是能快速、有效的解决问题的方法才是好方法。


数据分析的作用:
现状分析(一般通过日常报表来完成,比如日报、周报、月报)
原因分析(一般通过专题分析来完成)
预测分析(一般用于定制企业的年度、月度或季度计划时)


数据分析的流程:
1:明确数据分析的目的和思路(以解决问题为中心,确定从哪几个角度,用哪些指标进行分析,搭建分析框架)
2:准备数据(数据来源有以下几种:企业内部的数据库、公开出版物、互联网、市场调查等)
3:处理数据(对收集的数据进行加工、整理,形成适合数据分析的样式)
4:分析数据(方法多样,参考上面的各种分析方法)
5:展现数据(通过表格和图形来展现,不要一味的追求高大上的图表,表达要明确直观)
6:报告撰写(数据分析报告是对整个数据分析过程的一个总结与呈现,
   通过报告,将数据分析的起因、过程、结果、以及建议完整的呈现出来,以供决策者参考)


"""


"""
二:Python概况
Python的应用范围
如何持续提升自己的Python技能?
Python各种常用包


python的学习线路:
网易云课堂之
Python数据分析实战 
→ Python统计分析实战
→ Python数据挖掘实战
→ Python数据抓取实战


Anaconda的使用
Spyder编辑器
view菜单 → panes → project explore
project菜单 → new project 与 existing project


变量窗口
多行执行代码


"""
"""
三:python编程基础
python的赋值符号是“=”
python的变量区分大小写,首字母不能是数字或者下划线,不能是python里的保留字


三种常用的数据类型:
Logical逻辑型 True 与False (首字母T或者F必须是大写)
Numeric数值型
Character字符型


&逻辑与,也叫“并且”运算
|逻辑或,也叫“或者”运算
not逻辑非,也叫“取反”运算


//:整除运算   7//4  得1
%:求余运算  10%4   得2


浮点数运算的误差(浮点数越界问题)
a=4.2
b=2.1
a+b的输出结果是6.30000001
a+b == 6.3  的结果是False
要解决这个问题,要用上Decimal
先导入   from decimal import Decimal
a = Decimal ('4.2')
b = Decimal ('2.1')
a+b的结果就是6.3
a+b == Decimal('6.3')  的结果是True


字符型Character,所有可以定义的字符,由单引号、双引号、或者三引号括起


转义字符
\'   表示单引号
\\   表示反斜杠
\n   表示换行


#PYTHON里的单行注释,用#开头,用三引号表示多行注释
print('c:\some\name') # 这里的\n被当成了换行




s = "abcd\
efg"  #\这里作为了续行符,执行结果会在一行内输出这个字符串
print (s) 


"""


"""
数据结构是指相互之间存在一种或多种数据关系的集合
数据结构的概念、定义、限制、访问及修改
python中常用的数据结构是Series和DataFrame
Series是用于存储一行或者一列数据以及与其相关索引的集合,相当于excel中的一列,只是没有列名
pandas中,默认索引都是从零开始的
使用Series,要先从pandas包中导入
Series中的各个数据的类型可以不相同




#导入Series和使用Series构造函数的时候,Series的首字母S必须大写
from pandas import Series
x = Series(
        ['a', True, 1]
        )
x


Series有一个默认的索引index,也可以指定index参数,用来设置自定义索引列
如:
from pandas import Series
x = Series(
        ['a', True, 1],
        index=['first','second','third']
        )


Series中元素的访问、获取
x[1]
x['Second']
指定Series中的索引以后,仍然可以使用默认索引来访问元素?是的,上面的x[1]和x['Second']都会返回True
访问元素下标不能越界,x[3]就会出错,提示out of bounds


追加元素
不能直接追加, x.append('2')会出现异常,只能追加序列:


n = Series(['2'])  #中括号外的小括号不能忘记
x.append(n) #这里是小括号哦,不是中括号


from pandas import Series
x = Series(
        ['a', True, 1],
        index=['first','second','third']
        )


x[1]
x['second']


n = Series(['2'])
x.append(n)


#因为这里没有指定新添加元素的index,python给他的index是0


y = x.append(n)


x[0]  #输出a,append不改变原来的序列,要接收这个变化,必须要重新赋值,比如x=x.append(n)才能改变原来的x
y[0]  #输出2,0是python分配给新加元素的index


元素检测
判断Series有没有某个元素
x=x.append(n)
'2' in x 返回false,说明这个方法行不通,实际上,x里面是有2这个元素的
必须使用 '2' in x.values 方法


from pandas import Series
x = Series(
        ['a', True, 1],
        index=['first','second','third']
        )


x[1]
x['second']


n = Series(['2'])
x = x.append(n)


'2' in x   #返回False
'2' in x.values   #返回True


Series切片
x[1:3]  #注意这里的冒号要是英文模式下的
#返回第二个和第三个元素,python里的区间都是左封闭的[1:3)
from pandas import Series
x = Series(
        ['a', True, 1],
        index=['first','second','third']
        )


x[1:3]  #返回True 和 1


#通过数组的方式,取出指定位置的元素,这也叫定位获取,常用于随机抽样
x[[0,2,1]]  #输出a,1,True


删除元素
1.根据index删除
x.drop(0)  # 报错:labels [0] not contained in axis,难道默认index在删除的时候不起作用?
#手动设定index参数后,默认index只在取数时有用,如x[0]可以取出第一个元素。?


x.drop('first') #可用,但是同样不影响x,需重新赋值x=x.drop('first') 


2.根据指定位置删除
x.drop(x.index[2])


from pandas import Series
x = Series(
        ['a', True, 1],
        index=['first','second','third']
        )


x.drop(x.index[2]) #第三个元素“1”被删除




3.根据指定的值进行删除
x['2' != x.values] # 讲序列中值为‘2’的元素删除


from pandas import Series
x = Series(
        ['a', True, 1,'2'],
        index=['first','second','third','fourth']
        )


x['2' != x.values]  #序列中只有'a', True, 1 ,‘2’被删除


drop和append一样,不改变原序列,要发生实际作用,需要重新赋值。


"""
from pandas import Series
x = Series(
        ['a', True, 1,'2'],
        index=['first','second','third','fourth']
        )


x['2' != x.values]









































评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值