数据分析——从入门到精通(十二)

import numpy as np
import pandas as pd 
from pandas import Series,DataFrame
import matplotlib.pyplot as plt

# 当前文档显示matplotlib的图像:可视化
%matplotlib inline
# 读取数据  data/AAPL.csv

apple = pd.read_csv('data/AAPL.csv')
apple.head()
DateOpenHighLowCloseAdj CloseVolume
01980-12-120.5133930.5156250.5133930.5133930.421597117258400
11980-12-150.4888390.4888390.4866070.4866070.39960143971200
21980-12-160.4531250.4531250.4508930.4508930.37027226432000
31980-12-170.4620540.4642860.4620540.4620540.37943721610400
41980-12-180.4754460.4776790.4754460.4754460.39043618362400
# dataframe的属性 比series 多一个columns
# 查看每一个字段的类型
apple.dtypes
Date          object
Open         float64
High         float64
Low          float64
Close        float64
Adj Close    float64
Volume         int64
dtype: object
apple.info()    # 信息的描述
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 9296 entries, 0 to 9295
Data columns (total 7 columns):
Date         9296 non-null object
Open         9296 non-null float64
High         9296 non-null float64
Low          9296 non-null float64
Close        9296 non-null float64
Adj Close    9296 non-null float64
Volume       9296 non-null int64
dtypes: float64(5), int64(1), object(1)
memory usage: 472.1+ KB
# 将data这一列转化为日期类型
# 两种方式,第一种通过映射
# 第二种
pd.to_datetime(apple['Date'])
0      1980-12-12
1      1980-12-15
2      1980-12-16
3      1980-12-17
4      1980-12-18
          ...    
9291   2017-10-17
9292   2017-10-18
9293   2017-10-19
9294   2017-10-20
9295   2017-10-23
Name: Date, Length: 9296, dtype: datetime64[ns]
apple.Date  # dataframe的列可以作为对象的属性来访问
0       1980-12-12
1       1980-12-15
2       1980-12-16
3       1980-12-17
4       1980-12-18
           ...    
9291    2017-10-17
9292    2017-10-18
9293    2017-10-19
9294    2017-10-20
9295    2017-10-23
Name: Date, Length: 9296, dtype: object
apple2 = apple.copy()
apple2.Date = pd.to_datetime(apple.Date)
apple2.dtypes
Date         datetime64[ns]
Open                float64
High                float64
Low                 float64
Close               float64
Adj Close           float64
Volume                int64
dtype: object
# 自省函数
# setattr(obj,property,value)
# getattr(obj,property)
# hasattr(obj,property)  返回bool值
# 将Date列设置为行索引
apple2.set_index('Date',drop=False)
DateOpenHighLowCloseAdj CloseVolume
Date
1980-12-121980-12-120.5133930.5156250.5133930.5133930.421597117258400
1980-12-151980-12-150.4888390.4888390.4866070.4866070.39960143971200
1980-12-161980-12-160.4531250.4531250.4508930.4508930.37027226432000
1980-12-171980-12-170.4620540.4642860.4620540.4620540.37943721610400
1980-12-181980-12-180.4754460.4776790.4754460.4754460.39043618362400
........................
2017-10-172017-10-17159.779999160.869995159.229996160.470001160.47000118997300
2017-10-182017-10-18160.419998160.710007159.600006159.759995159.75999516374200
2017-10-192017-10-19156.750000157.080002155.020004155.979996155.97999642584200
2017-10-202017-10-20156.610001157.750000155.960007156.250000156.25000023974100
2017-10-232017-10-23156.889999157.690002155.500000156.169998156.16999821867200

9296 rows × 7 columns

apple2.set_index('Date',drop=True)
OpenHighLowCloseAdj CloseVolume
Date
1980-12-120.5133930.5156250.5133930.5133930.421597117258400
1980-12-150.4888390.4888390.4866070.4866070.39960143971200
1980-12-160.4531250.4531250.4508930.4508930.37027226432000
1980-12-170.4620540.4642860.4620540.4620540.37943721610400
1980-12-180.4754460.4776790.4754460.4754460.39043618362400
.....................
2017-10-17159.779999160.869995159.229996160.470001160.47000118997300
2017-10-18160.419998160.710007159.600006159.759995159.75999516374200
2017-10-19156.750000157.080002155.020004155.979996155.97999642584200
2017-10-20156.610001157.750000155.960007156.250000156.25000023974100
2017-10-23156.889999157.690002155.500000156.169998156.16999821867200

9296 rows × 6 columns

apple2.set_index('Date',drop=True,inplace=True)
apple2.head(10)
OpenHighLowCloseAdj CloseVolume
Date
1980-12-120.5133930.5156250.5133930.5133930.421597117258400
1980-12-150.4888390.4888390.4866070.4866070.39960143971200
1980-12-160.4531250.4531250.4508930.4508930.37027226432000
1980-12-170.4620540.4642860.4620540.4620540.37943721610400
1980-12-180.4754460.4776790.4754460.4754460.39043618362400
1980-12-190.5044640.5066960.5044640.5044640.41426512157600
1980-12-220.5290180.5312500.5290180.5290180.4344289340800
1980-12-230.5513390.5535710.5513390.5513390.45275811737600
1980-12-240.5803570.5825890.5803570.5803570.47658812000800
1980-12-260.6339290.6361610.6339290.6339290.52058113893600
# 绘制 "Adj Close	" 字段的图形
apple2['Adj Close'].plot()
<matplotlib.axes._subplots.AxesSubplot at 0x87bb630>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3QLnGY8t-1649500702009)(output_12_1.png)]

# 查看最后五条数据
apple2.tail()
OpenHighLowCloseAdj CloseVolume
Date
2017-10-17159.779999160.869995159.229996160.470001160.47000118997300
2017-10-18160.419998160.710007159.600006159.759995159.75999516374200
2017-10-19156.750000157.080002155.020004155.979996155.97999642584200
2017-10-20156.610001157.750000155.960007156.250000156.25000023974100
2017-10-23156.889999157.690002155.500000156.169998156.16999821867200
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

今晚务必早点睡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值