NO2 -- Python数据分析基础

Python为我们提供了非常完善的基础代码库,和数据处理库集,所以非常适合做数据分析。

1. Python基础

Python环境安装

下载地址:https://www.python.org/downloads/windows/
在这里插入图片描述
下载64位的安装程序,下载后运行exe安装,记得勾选Add Python 3.7 to PATH

完成后可在命令提示符窗口中输入python,即可看到版本信息,并且进入python的交互式运行环境

python文件model.py的运行:在文件的目录下打开命令提示窗口,输入python model.py即可得到结果

Python基础语法

Python里空值,用None表示。

Python中,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量(Python是动态语言)

Python中,通常用全部大写的变量名表示常量

控制语句:

条件判断:if

if <条件判断1>:
    <执行1>
elif <条件判断2>:
    <执行2>
elif <条件判断3>:
    <执行3>
else:
    <执行4>

循环:
for…in循环

name = ['li','zhao','wang']
for na in name:
    print(na)

循环:while

name = ['li','zhao','wang']
i=0
while i<len(name):
    print('hello, %s!' %name[i])
    i = i + 1

函数:

要使用def语句来定义一个函数

def my_fun(x):
    if x >= 0:
        return x
    else:
        return -x

文件读写

读文件

with open(r'文件路径','r') as txt:
    print(txt.read())

写文件

with open(r'文件路径', 'w') as txt:
    txt.write('Hello, world!')

Python基本数据结构

集合

list和tuple是Python内置的有序集合,一个可变,一个不可变

list是一种有序的集合,可以随时添加和删除其中的元素,元素用[]

name = ['li','zhao','wang']
print('列出list集合:'+ str(name))
print('列出list集合:'+ str(len(name)))
print('打印name集合中第一个元素:'+ str(name[0]))
print('取集合最后一个元素:'+ str(name[-1]))
name.append('luo')
print('可以往list中追加元素到末尾'+ str(name))
name.pop()
print('删除list末尾的元素' + str(name))
name[1]='zz'
print('替换第一个位置的元素' + str(name))

tuple 是另一种有序列表叫元组,tuple和list非常类似,但是tuple一旦初始化就不能修改(tuple所谓的“不变”是说,tuple的每个元素,指向永远不变),元素用()

t = (1, 2)
t = (1,) //定义一个只有1个元素的tuple

字典

字典:dict全称dictionary,在其他语言中也称为map

name = {'li': 18,'zhao': 20,'wang': 23}

set:
set中的数据不能重复,要创建一个set,需要提供一个list作为输入集合:

>>> s = set([1, 1, 2, 2, 3, 3])
>>> s
{1, 2, 3}

2. Pandas基础

Pandas是Python的一个数据分析包,该工具为解决数据分析任务而创建。纳入了大量库和标准数据模型,提供高效的操作数据集所需的工具

pandas环境安装

在命令提示窗口输入:

pip install pandas

pandas数据结构:series和dataframe

Series可以认为是一维数组(只有行索引),它由一组数据以及一组与之相关的索引组成。

obj = pd.Series([4, 7, -5, 3])	#索引不指定默认为0到n-1
obj.values
obj.index	#获取索引对象

DataFrame是一个表格型的数据结构,可以认为是二维数组(行索引和列索引都有)

data={'state':['qq','ww','ee','rr','tt'],
      'age':[20,21,22,21,22],
      'pop':[1.5,1.7,3.6,2.4,2.9]}
frame=pd.DataFrame(data)
print(frame)

在这里插入图片描述

3. 实践

# _*_ coding: UTF-8 _*_
import numpy as np
import pandas as pd

def averagenum(num):	#平均数计算
    sum=0
    i=0
    for i in range(len(num)):
        sum+=num[i]
        i=i+1
    return sum/len(num)

if __name__ == '__main__':
	data1 = [x * x for x in range(10)]
	data1.append(5)
	print(data1)
	data1.sort()
	print('均值(可带权重):',np.average(data1))
	print('均值:',np.mean(data1))
	print('中位数:',np.median(data1))
	print('极大值:',np.max(data1))
	print('极小值:',np.min(data1))
	print('极差:',np.max(data1)-np.min(data1))
	
	obj = pd.Series([4, 7, -5, 3])
	print(obj)
	obj.values
	obj.index
	print('方差:',obj.var())
	print('标准差:',obj.std())
	print('四分位极差:',obj.quantile(0.75)-obj.quantile(0.25))
	print('异众比率:',1-obj.value_counts()[obj.mode()].sum()/obj.count())
	print('离散系数:',obj.std()/obj.mean())

果然,deadline是第一生产力

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值