看《量化投资:以python为工具》这本书,第一部分是python的基础知识。这一部分略读了,只看我还不知道或不熟的。

定义复数

x = complex(2, 5) #2+5j

也可以直接定义

y = 3-6j

用id()可以得到变量的内存地址

z = 3-6j
print(id(y), id(z))
```python
y和z的内存地址是一样的。
```python
531269809744 531269809744

python可以为不可变对象分配固定的内存,减少内存占用。

当两个变量指向同一对象时,is比较结果为True。当两个变量指向的对象值相等时,==为True。

如果函数参数为可变对象,在函数内部改变此对象会影响函数外部。

def testChange(x, y):
x[0] = "A"
y = 7 x = ["a", "b", "c", "d"]
y = 6
testChange(x, y)
print(x, y)

使用个数不定的参数,可以提前打包,或者使用不定参数传递,方法是在参数前加*

def manyCan(*arg):
sum = 0
for i in arg:
sum = sum+i
return sum print(manyCan(1,2,3))

匿名函数,无需使用def来定义的函数,使用lambda来定义。

# 匿名函数
greeting = lambda : print("hello")
greeting()

若字符串中包含单引号或双引号,要将整个字符串用三个引号包含。

文本分析时,应将字符串完全转换成小写再分析。

字典对象的keys()函数查看键值,values()函数返回值。

# 字典测试
dictest = {"High":5, "Low":1, "Close":3}
print(dictest)
for key in dictest.keys():
print(key)
print(dictest[key])

用del语句可以删除特定键及其对应值,用clear()方法则删除整个字典,返回空字典。

Python集合有set和frozenset两种,均不含重复元素,前者可变,后者不可变。

set用add()和remove()来增删成员。

使用arange创建array是不包含终点值的,要包含终点值,使用linspace。

不知道初始值时,用zeros(), ones()或empty()创建。

通过切片索引提取的array与原array共享内存,通过整型索引提取则不与原数组共享内存。

每个series对象实际上都由两个数组组成:index和values。

时间序列的index属性的取值为时间戳。用Timestamp()来将datetime转换为时间戳。由于其不接受列表等可迭代对象,用to_datetime()函数。

滞后操作:将t期数据换成t-a期数据。

超前操作:将t期数据换成t+a期数据。

标签索引与切片,用loc[行标签,列标签]

位置索引与切片,用iloc[行标签,列标签]

混合上述两者,用ix。(但python提示ix将被废弃)

我发文章的四个地方,欢迎大家在朋友圈等地方分享,欢迎点“在看”。

我的个人博客地址:https://zwdnet.github.io

我的博客园博客地址: https://www.cnblogs.com/zwdnet/

我的知乎文章地址: https://www.zhihu.com/people/zhao-you-min/posts

我的微信个人订阅号:赵瑜敏的口腔医学学习园地

量化投资学习笔记07——python知识补漏的更多相关文章

  1. 量化投资学习笔记01——初识Pyalgotrade量化交易回测框架

    年初学习量化投资,一开始想自己从头写,还是受了C/C++的影响.结果困在了计算回测数据那里,结果老也不对,就暂时放下了.最近试了一下python的各个量化投资框架,发现一个能用的——pyalgotra ...

  2. 量化投资学习笔记27——《Python机器学习应用》课程笔记01

    北京理工大学在线课程: http://www.icourse163.org/course/BIT-1001872001 机器学习分类 监督学习 无监督学习 半监督学习 强化学习 深度学习 Scikit ...

  3. 量化投资学习笔记29——《Python机器学习应用》课程笔记03

    聚类的实际应用,图像分割. 利用图像的特征将图像分割为多个不相重叠的区域. 常用的方法有阈值分割,边缘分割,直方图法,特定理论(基于聚类,小波分析等). 实例:利用k-means聚类算法对图像像素点颜 ...

  4. 量化投资学习笔记30——《Python机器学习应用》课程笔记04

    有监督学习 常用分类算法 KNN:K近邻分类器.通过计算待分类数据点,与已知数据中所有点的距离,取距离最小的前K个点,根据"少数服从多数"的原则,将这个数据点划分为出现次数最多的那 ...

  5. 量化投资学习笔记31——《Python机器学习应用》课程笔记05

    用分类算法进行上证指数涨跌预测. 根据今天以前的150个交易日的数据,预测今日股市涨跌. 交叉验证的思想:将数据集D划分为k个大小相似的互斥子集,每个子集都尽可能保持数据分布的一致性,即从D中通过分层 ...

  6. 量化投资学习笔记34——《Python机器学习应用》课程笔记08

    岭回归 解决某些训练样本线性相关,导致回归结果不稳定的情况. 它是一种用于共线性数据分析的有偏估计回归方法.是一种改良的最小二乘估计法. 在sklearn中使用sklearn.linear_model ...

  7. 量化投资学习笔记37——《Python机器学习应用》课程笔记10

    用KNN算法来进行数字识别,还是用sklearn自带的digits数据集. coding:utf-8 KNN算法实现手写识别 from sklearn import neighbors from sk ...

  8. 机器学习实战(Machine Learning in Action)学习笔记————07.使用Apriori算法进行关联分析

    机器学习实战(Machine Learning in Action)学习笔记————07.使用Apriori算法进行关联分析 关键字:Apriori.关联规则挖掘.频繁项集作者:米仓山下时间:2018 ...

  9. Noah的学习笔记之Python篇:命令行解析

    Noah的学习笔记之Python篇: 1.装饰器 2.函数“可变长参数” 3.命令行解析 注:本文全原创,作者:Noah Zhang  (http://www.cnblogs.com/noahzn/) ...

随机推荐

  1. supersockets多个 listener

    你可以增加一个子节点 "listeners" 用于添加多对监听 ip/port: <superSocket> <servers> <server na ...

  2. 移动端Chrome Inspect调试 (Android通过Chrome Inspect调试WebView的H5)(ios手机safari,chrome调试 windows)(如果inspect的时候,是空白)

    ios +chrome调试 引用https://segmentfault.com/a/1190000015428430 iTunes ios-webkit-debug-proxy-1.8-win64- ...

  3. JS 复制文本兼容移动端 iOS & android

    有几个需要注意的地方. 首先文本只有选中才可以复制,所以简单的做法就是创建一个隐藏的 input,然后绑定需要复制的文本. 另外如果将 input 设置为 `type="hidden&quo ...

  4. H3C 路由计算

  5. BZOJ 2160: 拉拉队排练(回文树)

    传送门: [1]:BZOJ [2]:洛谷 •题意 求串 s 中出现的所有奇回文串,并按照长度由大到小排序: 输出前 k 个奇回文串的乘积 mod 19930726; 如果奇回文串的个数不足 k 个,输 ...

  6. H3C 环路避免机制一:路由毒化

  7. P1025 最大完美度

    题目描述 定义一个字符串的完美度为字符串中所有字符的完美度的和. 现在给你一个只含字母的字符串s, 每一个字母的完美度由你进行分配, 可以分配给一个字母[1,26]中的一个数字作为完美度, 但每个字母 ...

  8. Spring Security学习笔记-自定义Spring Security过滤链

    Spring Security使用一系列过滤器处理用户请求,下面是spring-security.xml配置文件. <?xml version="1.0" encoding= ...

  9. 2018-8-10-win10-uwp-修改Pivot-Header-颜色

    title author date CreateTime categories win10 uwp 修改Pivot Header 颜色 lindexi 2018-08-10 19:17:19 +080 ...

  10. 很多.net 程序员不知道又非常重要的 .net高级调试技巧.调试别人的dll方法内的变量

    事情是这样的, 最近需要开发Orcale的数据库. 于是使用了EF 加上 Oracle.ManagedDataAccess.Client 这个Oracle.ManagedDataAccess 很好用, ...