用Python玩转数据——第五周数据统计和可视化

时间:2023-03-09 08:10:49
用Python玩转数据——第五周数据统计和可视化

一、数据获取

1.本地数据

with 语句,pd.read_csv('data.csv')

2.网站上数据

2.1 直接获取网页源码,在用正则表达式进行删选

2.2 API接口获取---以豆瓣为例

import requests

r=requests.get(https://api.douban.com/v2/book/1084336)

其他电影或者音乐可以直接网上搜索豆瓣API,会有相应教程教你如何使用,切记要直接看官网的

3.NLTK 语料库(自然语言工具包)

需要首先pip install NLTK

nltk.downlod()      然后就会弹出下载框,自己选择要下载的资料

from nltk.corpus import  gutenberg(brown)     资料下载在本地的,需要导入进来

包括古藤保语料库,布朗语料库,路透社语料库,这些都可以在查看其官网上看

二、数据准备

2.1 修改列索引和行索引

data.index=range(1,len(data)+1)

cols=['code',‘name’,'lasttrade']

2.2 创建时间序列

import pandas as pd

dates=pd.date_range('20170520',periods=7)  创建了7个连续时间序列

建立一个dataFrame时间二维表

data=pd.DataFrame(np.random.randn(7,3),index=dates,colums=list('ABC'))

三、数据显示

3.1 一维数据

data.head(5)  查看前5个;data.tail(5)  查看后5个;data.shape   维度;data.size 个数;

3.2 二维数据

loc类和iloc类,前者可以用标签,后者只能用物理位置的参数

data.loc[1:5,['code','lasttrade']]

data.loc[1:6,[0,2]]

data.iat[1,'code'] 选择一个之可以有iat也可以用loc类

/// data.iloc[1:5,[0,2]]  中括号里面只能是数字

四、分组Grouping

data.groupby('month').count()

五、合并(append、concat、join)

p.append(q)

concat是连接两个碎片,pd.concat([pieces1,pieces2],igonre_index=True)

join两张表合并,必须要有相同的字段

pd.merge(data.drop(['code'],axis=1),data2,on='code') 给予code将data1和data2两张表合并,并且将data1中code列删除