- 博客(131)
- 收藏
- 关注
转载 理解 Python 语言中的 defaultdict
转自http://kodango.com/understand-defaultdict-in-python众所周知,在Python中如果访问字典中不存在的键,会引发KeyError异常(JavaScript中如果对象中不存在某个属性,则返回undefined)。但是有时候,字典中的每个键都存在默认值是非常方便的。例如下面的例子:strings = ('puppy', 'kitten',
2017-04-27 16:14:06 603
原创 class--review python
通过学习Java与Python的类部分可以发现Java的一个类就写成一个文件,几个类合成一个package;而Python不同,一个文件看成一个module,即*.py的文件,一个module由多个类合成。 即:Java: project – package – class(文件级) Python: package – module (文件级)– class
2017-04-23 16:10:44 374
原创 def参数--review python
Python的函数定义中有两种特殊的情况,即出现*,**的形式其中 * 用来传递任意个无名字参数,这些参数会一个Tuple的形式访问。 **用来处理传递任意个有名字的参数,这些参数用dict来访问,键-值的形式。
2017-04-23 09:55:51 406
原创 while & list--review python
1.列表之间移动元素list1=[1,2,3]list2=[]while list1: temp = list1.pop() list2.append(temp)list2.reverse()2.删除list里特定元素list1=[1,2,3,1,3,2,1]while 1 in list1: list1.remove(1)list13.填充字典dict1 = {}p
2017-04-23 09:31:50 386
原创 dict--review python
dict工厂函数可以处理两种对象: dict(mapping obj) dict(iterable obj)a = dict(one=1, two=2, three=3) #第一种b = {'one': 1, 'two': 2, 'three': 3}c = dict(zip(['one', 'two', 'three'], [1, 2, 3])) #第二种d = dict([('two
2017-04-22 15:40:12 296
原创 PAT (Basic Level 1001-python3)
卡拉兹(Callatz)猜想:对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进
2016-11-25 21:11:39 426
原创 PAT (Basic Level 1002-python3)
卡拉兹(Callatz)猜想:对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进
2016-11-25 21:09:15 847 1
原创 Python for Data Analysis (11)
### pandas知识罗列---#### Series1. series 是类似turple结构的一维数组对象,并可以通过turple来创建;索引在左边,值在右边;索引和值之间有link;2. series 是有name属性3. series 有检测缺失数据(NaN)的函数:isnull,notnull---#### DateFrame4. DateFrame 是
2016-11-22 20:43:00 456
原创 Python for Data Analysis (10)
numpy创建数组array,zero,arrange,ones,eye,思想可以是列表到ndarray,经过reshapedtype,注意astype方法数组提供了批量计算的方法,大小相等的数组之间大小不同的数组之间的运算比较特别叫“广播”切片!!!数组和列表不一样,数组切片是原始数组的视图,只有通过np.copy方法可以得到副本而非视图
2016-11-16 10:44:10 349
转载 文本预处理学习(2)
R包之tm:文本挖掘包简介安装数据输入—文集(corpus)数据输出查看语料库(corpora)查看某几条信息查看单个文档元数据查看单个文档内容查看多个文档内容变换(transfo
2016-11-01 09:42:57 1231
原创 文本预处理学习(1)
nchar和length的字符统计nchar是向量元素的字符个数,而length是向量长度(向量元素的个数)x=c('hello world','1','12')nchar(x);length(x)length('');nchar('')字体大小写tolower,toupper,chartrDNA='AtGCtttACC'tolower(DNA);toupper(DNA)chartr(old
2016-10-28 15:40:52 2121
转载 文本分类的数据预处理流程介绍
在进行文本分类时,毫无疑问会涉及到对文本数据进行预处理,包括文档切分、文本分词、去停用词(包括标点、数字、单字和其它一些无意义的词)、文本特征提取、词频统计、文本向量化等操作。下面就这几方面作一个概括性的介绍,具体的实现还有待慢慢的研究。文档切分文档切分这个操作是可选的,取决于你获取到的文档集合的形式。如果你得到的文档集合本身就是一篇一篇文章分开的,那么这一步就可以省略了。反之,如果文档集合是一
2016-10-26 16:17:21 25276 2
转载 Transforming Code into Beautiful,Idiomatic Python(1)
原文位置:http://sssslide.com/speakerdeck.com/pyconslides/transforming-code-into-beautiful-idiomatic-python-by-raymond-hettinger-1When you see this, do that instead!Replace traditional index manipulation w
2016-09-21 10:51:21 364
原创 词频直方图
词频直方图算词频import nltk#加载Gutenberg语料库from nltk.corpus import gutenberggutenberg.fileids()['austen-emma.txt', 'austen-persuasion.txt', 'austen-sense.txt', 'bible-kjv.txt', 'blake-poems.txt', 'bryan
2016-09-20 21:10:30 1436
原创 Python for Data Analysis (9)
魔法命令a=1;b=100a*b%timeit a*bThe slowest run took 15.46 times longer than the fastest. This could mean that an intermediate result is being cached.1000000 loops, best of 3: 201 ns per loopimport numpy
2016-09-19 23:46:14 504
原创 Python for Data Analysis (8)
字典#update方法,一个字典可以被合并到另一个字典中去:d1={1:'a',2:'b'}d1.update({3:'c',4:'d'})d1dict(zip(range(4),reversed(range(5))))d1.get(1)默认值!!1.一个常见的逻辑: if key in some_dict: value=some_dict[key] else:
2016-09-19 19:36:58 450
原创 Python for Data Analysis (7)
enumerate它可以逐个返回序列的(i,vlue)元组,可以用于映射其所在位置的字典#语法for i, value in enumerate(collection): #用value做一些事情list1=['foo','too','foor']for i,value in enumerate(list1): print i,value0 foo1 too2 foorma
2016-09-16 09:50:38 342
原创 Python for Data Analysis (6)
range和xrange两者区别,xrange多用于范围较大的情况,其参数与range是一样的,但它不会预先产生所有的值并将它保存在列表中,而是返回一个用于逐个产生整数的迭代器。注意!! 在python3中,range始终返回迭代器,因此也就没有xrange函数。sum=0for i in xrange(10000100): if i%3==0 & i%5==0: su
2016-09-13 23:52:29 384
原创 Python for Data Analysis (5)
异常处理try/excepttry/except someerrortry/finallytry/except/else/fianlly#1.try/except,想编写一个出错时能返回输入参数的一个float函数def attempt_float(x): try: return float(x) except: #except后不加任何指定错误,则如果
2016-09-12 22:40:10 442
原创 Python for Data Analysis(4)
时期和时间内置的datatime模块提供了datatime、date以及time等类型,其中datetime用的是最多的,它合并保存了date and time中的信息from datetime import datetime, date, timedt=datetime(2016,9,12,8,53,40)dt.date()datetime.date(2016, 9, 12)dt.time()
2016-09-12 10:11:44 275
原创 Python for Data Analysis (3)
附录A (2)引进模块有两种写法:#第一种import numpy as np #as后是用来简化调用时名称繁杂#第二种from numpy import abs #是直接引入np中的定义的变量和函数#其中第二种后面的abs还有"as",例如,from numpy import abs as ab,ComplexWarning as complexW二元运算符表标量类型表数值运算#运算中2.
2016-09-11 23:43:00 554
原创 Python for Data Analysis (2)
附录Apwd'/Users/momo/code/python/learnpython'ls100odd.py fab.py leapyear.py1to100.py fib_401.py odd.py3.30_primenumber.py fiverings.py parallel.p
2016-09-11 11:42:20 501
原创 Python for Data Analysis (1)
注意学习collections庫#定义一个偏历函数,将计数值保存在字典中:def get_counts(sequence): counts={} for x in sequence: if x in counts: counts[x]+=1 else: counts[x]=1 return co
2016-09-09 16:03:48 366
转载 数据科学的完整学习路径—Python版
从Python菜鸟到Python Kaggler的旅程(译注: Kaggle 是一个数据建模和数据分析竞赛平台)假如你想成为一个数据科学家,或者已经是数据科学家的你想扩展你的技能,那么你已经来对地方了。本文的目的就是给数据分析方面的Python新手提供一个完整的学习路径。该路径提供了你需要学习的利用Python进行数据分析的所有步骤的完整概述。如果你已经有一些相关的背景知识,或者你不需要路
2016-09-08 22:17:38 926
原创 Numpy(5)
'''# coding=utf-8 Created on 2016-9-7 @author: paulsweet '''import numpy as npa=np.arange(12).reshape(3,4)aarray([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])#二维数组,0轴,1轴可以分
2016-09-07 22:46:59 275
转载 NumPy中的基本数据类型
NumPy中的基本数据类型名称描述bool用一个字节存储的布尔类型(True或False)inti由所在平台决定其大小的整数(一般为int32或int64)int8一个字节大小,-128 至 127int16整数,-32768 至 32767int32整数,-2 ** 31 至 2 ** 32 -1
2016-09-07 18:09:58 7009
原创 Numpy(4)
多维数组'''# coding=utf-8 Created on 2016-9-6 @author: paulsweet '''import numpy as np#生成6*6的矩阵a=np.arange(0,60,10).reshape(-1,1)+np.arange(0,6)aarray([[ 0, 1, 2, 3, 4, 5], [10, 11, 12, 13
2016-09-06 16:50:55 281
原创 Numpy(3)
存取元素切片 整数数组布尔数组'''# coding=utf-8 Created on 2016-9-5 @author: paulsweet '''import numpy as np整数数组a=np.arange(10)aarray([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])a[:-1]array([0, 1, 2, 3, 4, 5, 6, 7, 8])a
2016-09-05 23:32:00 761
转载 编程之美,剑指offer,以及微软100题的python代码
1.编程之美,剑指offer,以及微软100题(来自july的msdn博客)的python代码 2.python代码,附有题目,分析过程,注释,以及测试程序 3.部分代码缺失,或有问题,欢迎补充 4.用python实现,算法无关因素统统靠边,一目了然。 同样的实现,比july上的大部分程序实现都要简单,部分程序用了july 1/4~1/3的代码量。 5.不断更新中http://vdis
2016-09-02 16:24:01 1079
原创 Numpy(2)
import numpy as npNumPy提供了很多专门用来创建数组的函数 - arange - linspace & logspace - frombuffer,fromstring ,fromfile#arange函数类似于python的range函数,通过指定开始值、终值和步长来创建一维数组np.arange(1,2,0.1)array([ 1. , 1.1, 1.2, 1.
2016-09-02 11:40:11 368
原创 Numpy(1)
Numpy标准安装的Python中用列表(list)保存一组值,可以用来当作数组使用,不过由于列表的元素可以是任何对象,因此列表中所保存的是对象的指针。这样为了保存一个简单的[1,2,3],需要有3个指针和三个整数对象。对于数值运算来说这种结构显然比较浪费内存和CPU计算时间。此外Python还提供了一个array模块,array对象和列表不同,它直接保存数值,和C语言的一维数组比较类似。但是由于它
2016-09-02 00:10:40 327
原创 哎,学一半发现难以绕过著名数据分析模块
import numpy as np import pandas as pd from scipy import stats # 初始化此策略def initialize(context): #对比标的 set_benchmark('000300.XSHG') #设置佣金 set_commission(PerTrade(buy_cost=0.0003, sell
2016-09-01 16:38:50 328
原创 玩JoinQuant的开始
#初始化方法,在整个回测、模拟实盘中最开始执行一次,用于初始一些全局变量 #context: UserContext对象,存放有当前的账户/股票持仓信息initialize(context)#该函数每个单位时间会调用一次, 如果按天回测,则每天调用一次,如果按分钟,则每分钟调用一次#data: 一个字典(dict), key是股票代码, value是当时的SecurityUnitData
2016-08-31 21:51:03 2175
原创 初识jieba(py3)
data=open('/Users/momo/Desktop/小论文/模拟/红楼梦/红楼梦.txt') #for line in data: # print(line)type(data)fout = open('/Users/momo/Desktop/小论文/模拟/红楼梦/output.txt', 'w')import jieba as jbseg_list = jb.cut('你是谁
2016-08-29 23:24:22 408
原创 dict(待补充)
dicthelp(dict)Help on class dict in module __builtin__:class dict(object) | dict() -> new empty dictionary | dict(mapping) -> new dictionary initialized from a mapping object's | (key, value)
2016-08-26 22:57:32 481
转载 python中读写文件及中文编码处理方法【整理】
一、打开文件代码如下:>>> f =open("d:\test.txt", "w")说明:第一个参数是文件名称,包括路径;第二个参数是打开的模式mode :'r':只读(缺省。如果文件不存在,则抛出错误)'w':只写(如果文件不存在,则自动创建文件)'a':附加到文件末尾 'r+':读写如果需要以二进制方式打开文件,需要在mode后面加上字符"b",比如"r
2016-08-25 16:27:53 1524
原创 open(涉及decode & encode)
#_*_coding:utf-8_*_data=open('/Users/momo/Desktop/小论文/模拟/红楼梦/红楼梦.txt')data=list(data)#循环处理每一行for line in data: line=line.decode('utf8') print line
2016-08-25 11:12:53 585
转载 没那么简单:decode encode open
学习小甲鱼的python基础教程那么长时间,这中间也有许多深入的思考,有些看似平常的东西,经过深入思考发现原来没那么简单,为了巩固自己的理解,同鱼油交流,特地整理成系列帖子,中间有什么理解或表达有误的地方希望鱼油指正,共同提升。 今天探讨decode encode open 这些涉及到编码,解码的问题,讨论这个问题先要讨论一下编程的整个过程,编程过程为:
2016-08-24 22:56:17 388
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人