<Pandas基础入门>

        Pandas是Python的一个扩展程序库,常用于数据分析。它是一个开放源码、BSD 许可的库,提供高性能、易于使用的数据结构数据分析工具。Pandas 作为一个强大的分析结构化数据的工具集,基础是 Numpy(提供高性能的矩阵运算),可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据。Pandas 可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗数据加工特征。Pandas 的主要数据结构是 Series (一维数据)与 DataFrame(二维数据),这两种数据结构足以处理金融、统计、社会科学、工程等领域里的大多数典型用例。

一、数据结构 - Series

        Pandas Series 类似表格中的一个列(column),类似于一维数组,可以保存任何数据类型。语法如下:

pandas.Series(
    data  (数据组), 
    index (索引开始位置,默认从0开始), 
    dtype (数据类型,默认pandas会自己判断), 
    name  (设置名称,默认为空), 
    copy  (是否复制数据,默认False)
)

实例:虽然索引可以为字典但是不要使用,否则在读取数据时会报"typeerror",此处只是为了演示

import pandas as pd

name = ['老王','老李','老刘']

myvar = pd.Series(data=name,index=[1,'a',{'abc':123}],name='人名',copy=False)

print(myvar)

  

根据索引值读取数据,索引目标数据不存在时返回'NaN':

print(myvar['a'])

  

我们也可以使用 key/value 对象,类似字典来创建 Series:

import pandas as pd

name = {4:'老王',5:'老李',a:'老刘'}

myvar = pd.Series(name)

print(myvar)

我们可以看到,key值自动变成了索引值

  

基于此只需要字典中的一部分数据,只需要指定需要数据的索引即可:

import pandas as pd

name = {4:'老王',5:'老李','a':'老刘'}

myvar = pd.Series(name,index=[1,'a'])

print(myvar)

 

二、数据结构 - DataFrame

        DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。

DataFrame 构造方法如下:


                
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
小白量化学习-自创指标设计 一、准备工作 1、首先把“HP_formula.py”文件复制到自己的工程目录中。 2、在新文件开始增加下面4条语句。 import numpy as np import pandas as pd from HP_formula import * import tushare as ts 二、对数据预处理 我们采用与tushare旧股票数据格式。 #首先要对数据预处理 df = ts.get_k_data('600080',ktype='D') mydf=df.copy() CLOSE=mydf['close'] LOW=mydf['low'] HIGH=mydf['high'] OPEN=mydf['open'] VOL=mydf['volume'] C=mydf['close'] L=mydf['low'] H=mydf['high'] O=mydf['open'] V=mydf['volume'] 三、仿通达信或大智慧公式 通达信公式转为python公式的过程。 1.‘:=’为赋值语句,用程序替换‘:=’为python的赋值命令‘='。 2.‘:’为公式的赋值带输出画线命令,再替换‘:’为‘=’,‘:’前为输出变量,顺序写到return 返回参数中。 3.全部命令转为英文大写。 4.删除绘图格式命令。 5.删除掉每行未分号; 。 6.参数可写到函数参数表中.例如: def KDJ(N=9, M1=3, M2=3): 例如通达信 KDJ指标公式描述如下。 参数表 N:=9, M1:=3, M2:=3 RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100; K:SMA(RSV,M1,1); D:SMA(K,M2,1); J:3*K-2*D; # Python的KDJ公式 def KDJ(N=9, M1=3, M2=3): RSV = (CLOSE - LLV(LOW, N)) / (HHV(HIGH, N) - LLV(LOW, N)) * 100 K = SMA(RSV,M1,1) D = SMA(K,M2,1) J = 3*K-2*D return K, D, J #----------------------------------- #根据上面原理,我们把大智慧RSI指标改 # 为Python代码,如下。 def RSI(N1=6, N2=12, N3=24): """ RSI 相对强弱指标 """ LC = REF(CLOSE, 1) RSI1 = SMA(MAX(CLOSE - LC, 0), N1, 1) / SMA(ABS(CLOSE - LC), N1, 1) * 100 RSI2 = SMA(MAX(CLOSE - LC, 0), N2, 1) / SMA(ABS(CLOSE - LC), N2, 1) * 100 RSI3 = SMA(MAX(CLOSE - LC, 0), N3, 1) / SMA(ABS(CLOSE - LC), N3, 1) * 100 return RSI1, RSI2, RSI3 四、使用公式并绘图 #假定我们使用RSI指标 r1,r2,r3=RSI() mydf = mydf.join(pd.Series( r1,name='RSI1')) mydf = mydf.join(pd.Series( r2,name='RSI2')) mydf = mydf.join(pd.Series( r3,name='RSI3')) mydf['S80']=80 #增加上轨80轨迹线 mydf['X20']=20 #增加下轨20轨迹线 mydf=mydf.tail(100) #显示最后100条数据线 #下面是绘线语句 mydf.S80.plot.line() mydf.X20.plot.line() mydf.RSI1.plot.line(legend=True) mydf.RSI2.plot.line(legend=True) mydf.RSI2.plot.line(legend=True) 不懂就看我的博客 https://blog.csdn.net/hepu8/article/details/93378543
### 回答1: Python是一种简单易学的编程语言,适合零基础入门。下面我将介绍一些入门Python编程的建议和方法。 首先,你可以开始学习Python基础语法。Python具有直观的语法和清晰的代码结构,使得初学者容易理解和掌握。你可以通过观看在线教程、学习Python编程书籍或参加编程培训课程来学习这些基础知识。 其次,你需要学习如何使用Python的编程工具和环境。Python具有许多IDE(集成开发环境)和编辑器供你选择,例如PyCharm、Jupyter Notebook或者VS Code等。通过熟悉并选择一个适合你的开发环境,你可以更方便地进行Python编程。 进一步学习Python的编程概念和技巧也很重要。学习数据类型、变量、运算符、控制流语句、函数等基础知识,这些是编写Python程序的基础要素。你可以编写简单的程序来实践和巩固这些概念。 另外,学习如何使用Python的库和模块对你的编程技能也非常有帮助。Python拥有丰富的第三方库和模块,可以帮助你实现各种功能。例如,NumPy和Pandas用于数据分析,Matplotlib和Seaborn用于数据可视化,Requests和BeautifulSoup用于网络爬虫等等。通过学会使用这些库,你可以扩展你的Python编程能力。 最后,不断实践和练习是提高编程水平的关键。尝试解决一些简单的编程问题,挑战你的思维和解决问题的能力。参与开源项目或者与其他编程爱好者交流也能够提高你的编程技能。 总之,零基础入门Python编程需要学习基础语法、选择适合的编程工具和环境、掌握编程概念和技巧、学习使用Python库和模块以及不断实践和练习。通过这些步骤,你将能够逐渐掌握Python编程的基础知识并提升你的编程能力。祝你学习顺利! ### 回答2: Python编程是一门非常适合零基础入门的编程语言。以下是一些帮助你开始学习Python的建议。 首先,你可以选择一本适合初学者的Python教程或者参加一些零基础的编程课程。这样的教程或者课程通常会涵盖基本的Python语法和常用的编程概念。 其次,你可以通过编写简单的程序来实践你学到的知识。例如,你可以尝试编写一个打印“Hello, world!”的程序,或者编写一个简单的计算器程序。 此外,互联网上也有许多免费的资源供你学习和提高Python编程的能力,如网上教程、视频教程和博客等。你可以选择一些适合自己的学习资源,根据自己的进度进行学习。 另外,加入一个编程社区或者论坛也是一个不错的选择。你可以在这个社区与其他Python爱好者互动,分享经验,互相学习和解决问题。 最重要的是,保持持续的学习和实践。编程是一个需要不断练习和尝试的过程,通过反复练习和实践,你会逐渐熟悉Python的语法和编程思维,并且能够编写更复杂的程序。 总的来说,Python编程零基础入门并不困难。通过选择适合自己的学习资源,实践和坚持不懈,你会慢慢的掌握Python基础知识,并且能够编写简单的程序。 ### 回答3: Python编程是一种非常适合零基础入门的编程语言。下面我来简单介绍一下Python编程的入门步骤。 首先,你需要安装Python解释器。Python是一种解释型语言,可以直接在电脑上安装并运行。你可以从Python官方网站上下载最新的Python版本,并按照指引将其安装到你的电脑上。 接着,你可以通过学习一些基本的Python语法来入门Python语法相对简单易懂,你可以从基本的数据类型(如整数、浮点数、字符串)开始学习,并了解如何进行基本的数学计算、字符串处理等操作。你可以通过在线教程、学习网站或者参考一些入门教材来学习Python的语法知识。 一旦你掌握了基本的语法知识,你可以开始编写一些简单的Python程序。比如,你可以编写一个简单的计算器程序,或者一个打印特定信息的程序。这些简单的练习可以帮助你理解如何使用Python语法来解决问题。 在练习编写程序的过程中,你可能会遇到一些错误和问题。不要担心,这是正常的。通过查阅Python的官方文档、网上的编程论坛或者寻求帮助,你可以找到解决问题的方法。 此外,Python社区也提供了很多学习资源和工具,可以帮助你更好地入门。比如,有一些交互式编程环境(如Jupyter Notebook)可以帮助你在学习过程中进行实时的代码调试和运行。 最重要的是,不断练习!编程是一门实践性强的学科,只有通过不断的练习才能加深理解和提高编程能力。你可以选择一些简单的项目来挑战自己,并逐渐提升编程的难度。 总结起来,Python编程的零基础入门主要包括安装Python解释器、学习基本的语法知识、练习编写简单的程序、解决问题、利用资源和工具辅助学习,并且不断进行实践和练习。祝你在Python编程的学习过程中取得好成果!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值