[Python] Pandas load DataFrames
Create an empty Data frame with date index:
- import pandas as pd
- def test_run():
- start_date='2017-11-24'
- end_data='2017-11-28'
- dates=pd.date_range(start_date, end_data)
- df1=pd.DataFrame(index=dates)
- print(df1)
- """
- Empty DataFrame
- Columns: []
- Index: [2010-01-22 00:00:00, 2010-01-23 00:00:00, 2010-01-24 00:00:00, 2010-01-25 00:00:00, 2010-01-26 00:00:00]
- """
Now we want to load SPY.csv and get 'Adj Close' column value and copy the range (11-21, 11-28) data to the empty data frame:
- import pandas as pd
- def test_run():
- start_date='2017-11-24'
- end_data='2017-11-28'
- dates=pd.date_range(start_date, end_data)
- # Create an empty data frame
- df1=pd.DataFrame(index=dates)
- # Load csv file
- dspy=pd.read_csv('data/SPY.csv',
- index_col="Date",
- parse_dates=True,
- usecols=['Date', 'Adj Close'],
- na_values=['nan'])
- # print(dspy)
- """
- Adj Close
- Date
- 2017-11-16 258.619995
- 2017-11-17 257.859985
- 2017-11-20 258.299988
- """
- # join the table
- df1=df1.join(dspy)
- #print(df1)
- """
- Adj Close
- 2017-11-24 260.359985
- 2017-11-25 NaN
- 2017-11-26 NaN
- 2017-11-27 260.230011
- """
- # drop the nan row
- df1=df1.dropna()
- print(df1)
- """
- Adj Close
- 2017-11-24 260.359985
- 2017-11-27 260.230011
- 2017-11-28 262.869995
- """
- if __name__ == '__main__':
- test_run()
There is a simpy way to drop the data which index is not present in dspy:
- df1=df1.join(dspy, how='inner')
We can also rename the 'Adj Close' to prevent conflicts:
- # rename the column
- dspy=dspy.rename(columns={'Adj Close': 'SPY'})
Load more stocks:
- import pandas as pd
- def test_run():
- start_date='2017-11-24'
- end_data='2017-11-28'
- dates=pd.date_range(start_date, end_data)
- # Create an empty data frame
- df1=pd.DataFrame(index=dates)
- # Load csv file
- dspy=pd.read_csv('data/spy.csv',
- index_col="Date",
- parse_dates=True,
- usecols=['Date', 'Adj Close'],
- na_values=['nan'])
- # print(dspy)
- """
- Adj Close
- Date
- 2017-11-16 258.619995
- 2017-11-17 257.859985
- 2017-11-20 258.299988
- """
- # rename the column
- dspy=dspy.rename(columns={'Adj Close': 'spy'})
- # join the table
- df1=df1.join(dspy, how='inner')
- # print(df1)
- """
- Adj Close
- 2017-11-24 260.359985
- 2017-11-27 260.230011
- 2017-11-28 262.869995
- """
- symbols=['aapl', 'ibm']
- for symbol in symbols:
- temp=pd.read_csv('data/{0}.csv'.format(symbol), index_col="Date", parse_dates=True, usecols=['Date', 'Adj Close'], na_values=['nan'])
- temp=temp.rename(columns={'Adj Close': symbol})
- df1=df1.join(temp)
- print(df1)
- """
- spy aapl ibm
- 2017-11-24 260.359985 174.970001 151.839996
- 2017-11-27 260.230011 174.089996 151.979996
- 2017-11-28 262.869995 173.070007 152.470001
- """
- if __name__ == '__main__':
- test_run()
[Python] Pandas load DataFrames的更多相关文章
- python & pandas链接mysql数据库
Python&pandas与mysql连接 1.python 与mysql 连接及操作,直接上代码,简单直接高效: import MySQLdb try: conn = MySQLdb.con ...
- Python pandas ERROR 2006 (HY000): MySQL server has gone away
之前在做python pandas大数据分析的时候,在将分析后的数据存入mysql的时候报ERROR 2006 (HY000): MySQL server has gone away 原因分析:在对百 ...
- Python+Pandas 读取Oracle数据库
Python+Pandas 读取Oracle数据库 import pandas as pd from sqlalchemy import create_engine import cx_Oracle ...
- 看到篇博文,用python pandas改写了下
看到篇博文,https://blog.csdn.net/young2415/article/details/82795688 需求是需要统计部门礼品数量,自己简单绘制了个表格,如下: 大意是,每个部门 ...
- Python pandas快速入门
Python pandas快速入门2017年03月14日 17:17:52 青盏 阅读数:14292 标签: python numpy 数据分析 更多 个人分类: machine learning 来 ...
- Python pandas & numpy 笔记
记性不好,多记录些常用的东西,真·持续更新中::先列出一些常用的网址: 参考了的 莫烦python pandas DOC numpy DOC matplotlib 常用 习惯上我们如此导入: impo ...
- python. pandas(series,dataframe,index) method test
python. pandas(series,dataframe,index,reindex,csv file read and write) method test import pandas as ...
- oracle数据据 Python+Pandas 获取Oracle数据库并加入DataFrame
import pandas as pd import sys import imp imp.reload(sys) from sqlalchemy import create_engine impor ...
- Python Pandas找到缺失值的位置
python pandas判断缺失值一般采用 isnull(),然而生成的却是所有数据的true/false矩阵,对于庞大的数据dataframe,很难一眼看出来哪个数据缺失,一共有多少个缺失数据,缺 ...
随机推荐
- swift 20 - Nested Types
Nested Types 只是为了方便类型的整合和使用 struct BlackjackCard { // nested Suit enumeration enum Suit: Character { ...
- cuDNN编写卷积实例
转载至http://www.goldsborough.me/cuda/ml/cudnn/c++/2017/10/01/14-37-23-convolutions_with_cudnn/ Convolu ...
- Hadoop不同模式下关键配置属性
Hadoop分为三种模式: 独立(或本地)模式. 伪分布模式. 全分布模式 不同模式下关键配置项及属性内容如下面表格所示 组件名称 配置的文件名 属性名称 独立模式 伪分布模式 全分布模式 Commo ...
- 洛谷 P2279 [HNOI2003]消防局的设立 (树形dp or 贪心)
一看到这道题就知道是树形dp 之前做过类似的题,只不过保护的范围是1 所以简单很多. 这道题保护的范围是2,就复杂了很多. 我就开始列状态,然后发现竟然有5种 然后我就开始列方程. 但是我考虑的时候是 ...
- 紫书 习题8-9 UVa 1613 (dfs染色+图的性质)
这道题一开始我没想什么直接开始染, 但是是for循环一个节点一个节点染, 然后就WA 后了看了https://www.cnblogs.com/jerryRey/p/4702323.html 发现原来还 ...
- 华夏60 战斗机(最短路dijkstra)
华夏60 战斗机(最短路dijkstra) 华夏60 超音速战斗机是当今世界上机动性能最先进的战斗机.战斗过程中的一个关键问题是如何在最短的时间内使飞机从当前的飞行高度和速度爬升/俯冲到指定的高度并达 ...
- Qt 5.3 下OpenCV 2.4.11 开发(5)最高效的像素引用
OpenCV 提供一个函数 getTickCount() ,能够用来測量一段代码的执行时间.另一个函数 getTickFrequency() 用来返回每秒内的时钟周期.代码操作例如以下: double ...
- android获取自己定义控件位置坐标,屏幕尺寸,标题栏,状态栏高度
android获取自己定义控件位置坐标,屏幕尺寸,标题栏,状态栏高度 1.获取自己定义控件height 在本Activity中获取当前Activity中控件的height: Button button ...
- 手机Android音视频採集与直播推送,实现单兵、移动监控类应用
最新手机採集推送直播监控以及EasyDarwin开源流媒体平台的版本号及代码: EasyDarwin 开源流媒体云平台:https://github.com/easydarwin EasyClient ...
- Python 从入门到精通 全程最佳实现梳理
零零星星的时间,持续完善中...... 1.一些基础的必要信息归纳 Python 官网 www.python.org 发明者 吉多·范罗苏姆 发行时间 1991年,26年前 编程泛型 多泛型.面向对 ...