Python数据分析库Pandas教程——简介

Pandas是基于Python的高性能数据分析工具,非常容易上手。

Pandas安装

推荐使用Conda安装(尤其是在Windows下)

  • 使用Conda安装:
    • 安装anaconda
    • 进入anaconda命令行,conda create -n py27 python=2.7
    • conda install pandas
  • 使用PIP安装:
    • 安装pip,如果是Ubuntu,可以用sudo apt-get install python-pip安装
    • sudo pip install pandas

Pandas示例

这里演示用Pandas处理一个简单的CSV文件。
文件下载地址:bikes.csv
文件的前几行如下:

Date;Berri 1;Brébeuf (données non disponibles);Côte-Sainte-Catherine;Maisonneuve 1;Maisonneuve 2;du Parc;Pierre-Dupuy;Rachel1;St-Urbain (données non disponibles)
01/01/2012;35;;0;38;51;26;10;16;
02/01/2012;83;;1;68;153;53;6;43;
03/01/2012;135;;2;104;248;89;3;58;
04/01/2012;144;;1;116;318;111;8;61;
05/01/2012;197;;2;124;330;97;13;95;
06/01/2012;146;;0;98;244;86;4;75;
07/01/2012;98;;2;80;108;53;6;54;
08/01/2012;95;;1;62;98;64;11;63;

代码:

#coding=utf-8
import pandas as pd
pd.set_option('display.mpl_style', 'default') # 设置风格
import requests
import codecs
csv_text = requests.get("https://raw.githubusercontent.com/jvns/pandas-cookbook/master/data/bikes.csv").text # 下载CSV文件
with codecs.open("bikes.csv", "w", "utf-8") as f:
    f.write(csv_text)
df = pd.read_csv('bikes.csv', sep=';', encoding='latin1', parse_dates=['Date'], dayfirst=True, index_col='Date')
df[:3] # 获取前三行数据,在Python代码中需要加上print来显示
Berri 1 Br�beuf (donn�es non disponibles) C�te-Sainte-Catherine Maisonneuve 1 Maisonneuve 2 du Parc Pierre-Dupuy Rachel1 St-Urbain (donn�es non disponibles)
Date
2012-01-01 35 NaN 0 38 51 26 10 16 NaN
2012-01-02 83 NaN 1 68 153 53 6 43 NaN
2012-01-03 135 NaN 2 104 248 89 3 58 NaN
df['Berri 1'] # 根据列名获取一列数据
Date
2012-01-01      35
2012-01-02      83
2012-01-03     135
2012-01-04     144
2012-01-05     197
2012-01-06     146
2012-01-07      98
2012-01-08      95
2012-01-09     244
2012-01-10     397
2012-01-11     273
2012-01-12     157
2012-01-13      75
2012-01-14      32
2012-01-15      54
2012-01-16     168
2012-01-17     155
2012-01-18     139
2012-01-19     191
2012-01-20     161
2012-01-21      53
2012-01-22      71
2012-01-23     210
2012-01-24     299
2012-01-25     334
2012-01-26     306
2012-01-27      91
2012-01-28      80
2012-01-29      87
2012-01-30     219
              ... 
2012-10-07    1580
2012-10-08    1854
2012-10-09    4787
2012-10-10    3115
2012-10-11    3746
2012-10-12    3169
2012-10-13    1783
2012-10-14     587
2012-10-15    3292
2012-10-16    3739
2012-10-17    4098
2012-10-18    4671
2012-10-19    1313
2012-10-20    2011
2012-10-21    1277
2012-10-22    3650
2012-10-23    4177
2012-10-24    3744
2012-10-25    3735
2012-10-26    4290
2012-10-27    1857
2012-10-28    1310
2012-10-29    2919
2012-10-30    2887
2012-10-31    2634
2012-11-01    2405
2012-11-02    1582
2012-11-03     844
2012-11-04     966
2012-11-05    2247
Name: Berri 1, Length: 310, dtype: int64
df['Berri 1'].plot() # 绘制一列的统计图

这里写图片描述

可加QQ群426491390讨论机器学习、数据挖掘等相关知识。

猜你喜欢

转载自blog.csdn.net/AJAXHu/article/details/77769072