【任务学习之一】

楼主为了实现一个量化策略,不得不暂时停止之前教程(或者说读书笔记),开始新的一个专题——任务学习。因为楼主之前有其他语言的编程基础,所以这个专题会记录楼主在做任务的过程中遇到的问题,以及从他人借鉴过来的解决方法。希望也能对和楼主一样时间紧迫的学习者有所帮助。



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~华丽丽的分割线~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1、读入数据

>>> import os

>>>os.chdir("C:/Users/DELL/Desktop/金工/编程/python")

>>>data=open('sketch.txt') 

>>>print(data.readline(),end='')   #楼主用来看数据结构的

2、open

open/文件操作
f=open('/tmp/hello','w')  #open(路径+文件名,读写模式)

#读写模式:r只读,r+读写,w新建(会覆盖原有文件),a追加,b二进制文件.常用模式如:'rb','wb','r+b'等等

3、删除空白行

方法一:

get=[]
for line in data:
get.append(line.strip())
print(get)

缺点:速度太慢,楼主没时间等了,所以就没看到结果...

方法二:

def delblankline(infile,outfile):

infp=open(infile,'r')

outfp=open(outfile,'w')

lines=infp.readlines()

for li in lines:

if li.split():

outfp.writelines(li)

infp.close()

outfp.close()

优点:速度比第一种快太多了,试过正确,可采用

缺点:还需要再建一个txt,有没有可能直接在源文档删除?(可留作之后研究,可以试试用读写形式打开文件夹,然后再替换掉列表)

4、如何能够设置循环删文件的空行


5、提取其中一列


6、Python的DataFrame函数

pandas是python环境下最有名的数据统计包,而DataFrame翻译为数据框,是一种数据组织方式,这么说你可能无法从感性上认识它,举个例子,你大概用过Excel,而它也是一种数据组织和呈现的方式,简单说就是表格,而在在pandas中用DataFrame组织数据,如果你不print DataFrame,你看不到这些数据,下面我们来看看DataFrame是如何使用的。
首先是引入pandas和numpy,这是经常配合使用的两个包,pandas依赖于numpy,引入以后我们可以直接使用np/pd来表示这个两个模块
import numpy as np
import pandas as pd
先创建一个时间索引,所谓的索引(index)就是每一行数据的id,可以标识每一行的唯一值
dates=pd.date_range('20140729',periods=6)
为了快速入门,我们看一下如何创建一个6X4的数据:randn函数用于创建随机数,参数表示行数和列数,dates是上一步创建的索引列
df=pd.DataFrame(np.random.randn(6,4),index=dates,columns=list('ABCD'))
我们还可以使用字典来创建数据框,例如创建一个列名为A的数据框,索引是自动创建的整数
df2=pd.DaataFrame({'A':np.random.randn(6),})
这又是一个字典创建DataFrame的例子
df2=pd.DataFrame({'A':pd.Timestamp('20140729'),'B':pd.Series(1)})
加入字典内的数据长度不同,以最长的数据为准
df2=pd.DataFrame({'A':pd.Timestamp('20140729'),'B':pd.Series(1,index=list(range(4)))})
可以使用dtypes来查看各行的数据格式
df2.dtypes
看一下所有的数据
df
使用head查看前几行数据(默认为前5行),不过可以指定前几行
df.head()
查看前三行数据
df.head(3)
使用tail查看后5行数据
df.tail(5)
查看数据框的索引
df.index
查看列名用columns
df.columns
查看数据值,用values
df.values
查看描述性统计,用describe
df.describe()
使用type看一下输出的描述性统计是什么样的数据类型
type(df.describe())
使用T来转置数据,也就是行列转换
df.T
对数据进行排序,用到sort,参数可以指定根据那一列数据进行排序
df.sort(columns='C')



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值