Pandas的透视表


透视表

  • 透视表是一种可以对数据动态排布并且分类汇总的表格格式。或许大多数人都在Excel使用过数据透视表,也体会到它的强大功能,而在pandas中它被称作pivot_table。

  • 透视表的优点:

    • 灵活性高,可以随意定制你的分析计算要求
    • 脉络清晰易于理解数据
    • 操作性强,报表神器
# 使用pivot_table创建透视表
pivot_table(data,         # DataFrame
      values=None,        # 值
      index=None,         # 分类汇总依据
      columns=None,       ...

Read more

Pandas分组处理数据


数据分组聚合

import numpy as np
import pandas as pd
from pandas import DataFrame

替换操作

  • 替换操作可以同步作用于Series和DataFrame中
  • 单值替换

    • 普通替换: 替换所有符合要求的元素:to_replace=15,value='e'
    • 按列指定单值替换: to_replace={列标签:替换值} value='value'
  • 多值替换

    • 列表替换: to_replace=[] value=[]
    • 字典替换(推荐) to_replace={to_replace:value,to_replace:v...

Read more

DataFrame的级联and合并操作


import pandas as pd
import numpy as np

级联操作

  • pd.concat, pd.append

pandas使用pd.concat函数,与np.concatenate函数类似,只是多了一些参数:

objs
axis=0
keys
join='outer' / 'inner':表示的是级联的方式,outer会将所有的项进行级联(忽略匹配和不匹配),而inner只会将匹配的项级联到一起,不匹配的不级联
ignore_index=False
  • 匹配级联
df1 = pd.DataFrame(data=np.rand...

Read more

Matplotlib基础二


import matplotlib.pyplot as plt
import numpy as np

plt.plot()绘制线性图

  • 绘制单条线形图
  • 绘制多条线形图
  • 设置坐标系的比例plt.figure(figsize=(a,b))
  • 设置图例legend()
  • 设置轴的标识
  • 图例保存
    • fig = plt.figure()
    • plt.plot(x,y)
    • figure.savefig()

In [2]:

#绘制单条线形图
x = np.array([1,2,3,4,5])
y = x + 3

plt.plot(x,y)

Out[2]:

[<matplotlib.lines...

Read more

数据可视化练习


#!/usr/bin/env python
# coding: utf-8

# In[1]:


import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_csv('city_temperature.csv',dtype={'State':object})


# In[2]:


data['AvgTemperature'] = (data['AvgTemperature']-32)/1.8


# In[3...

Read more

数据分析练习之城市气温分析


数据分析练习之城市气温分析

数据分析的方法很多,参考答案仅供参考,你也可以使用更加简洁高效的方法实现相同的功能。

数据下载(提取码:1024)

【练习1】准备数据和转换格式

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_csv('city_temperature.csv',dtype={'State':object})

# 温度转换
data['AvgTemperature'] =(data['AvgT...

Read more

Pandas转换与处理时间序列数据


Pandas转换与处理时间序列数据

# -*- coding: utf-8 -*-

import pandas as pd
order = pd.read_table('../data/meal_order_info.csv',
      sep = ',',encoding = 'gbk')
print('进行转换前订单信息表lock_time的类型为:', 
      order['lock_time'].dtypes)
order['lock_time'] = pd.to_date...

Read more

使用Pandas处理MySQL中的数据


使用Pandas链接MySQL

安装pymysql+sqlalchemy

 pip install pymysql sqlalchemy

简单案例

数据下载

import os
import pandas as pd
from sqlalchemy import create_engine
## 创建一个mysql连接器,用户名为root,密码为root123
## 地址为127.0.0.1,数据库名称为testdb,编码为utf-8
engine = create_engine(
    'mysql+pymysql://root:root123@127.0.0.1:3...

Read more

NumPy作业(2)


题目

numpy作业2-1 numpy作业2-1

import numpy as np
# 1题 
arr1 = np.arange(9).reshape(3,3)
arr1.max(axis=1) # 对于二维数组来说,axis=0 对列操作,axis=1 对行操作
array([2, 5, 8])
# 2题
arr2 = np.arange(36).reshape(2,3,6)
arr2
array([[[ 0,  1,  2,  3,  4,  5],
        [ 6,  7,  8,  9, 10, 11],
        [12, 13, 14, 15, 16, 17]],

     ...

Read more