- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
def OnClick(self, text): self.text1.AppendText("\nHello, World!")
南京大学
基于数据处理与分析的Python案例展示
18
道指 成分 股数 据投 资组 合
南京大学
1.选股
如
何
2.计算不同证券的均值、协方差
构
3.给不同资产随机分配初始权重
建
(fileid, len(w)) for fileid in inaugural.fileids() for w in inaugural.words(fileid) if fileid > '1950') print(cfd.items()) cfd.plot()
南京大学
基于数据处理与分析的Python案例展示
南京大学
基于数据处理与分析的Python案例展示
8
古滕堡项目
Source
>>> from nltk.corpus import gutenberg >>> allwords = gutenberg.words('shakespeare-hamlet.txt') >>> len(allwords) 37360 >>> len(set(allwords)) 5447 >>> all_words.count('Hamlet') 99 >>> A = set(allwords) >>> longwords = [w for w in A if len(w) > 12] >>> print(sorted(longwords))
14
道指成分股数据获取
寻找被JS隐藏的页面
南京大学
浏览器的“开发者工具”
基于数据处理与分析的Python案例展示
15
道指成分股数据获取
包含多个字符串
'AXP', 'American Express Company', '77.77'
File
'BA', 'The Boeing Company', '177.83'
南京大学
基于数据处理与分析的Python案例展示
10
美国总统就职演说
File
# Filename: inaugural.py
from nltk.corpus import inaugural from nltk.probability import ConditionalFreqDist cfd = ConditionalFreqDist(
3
一些主题
美国大选数据分析 产品评论挖掘 总统就职演说稿分析 A股股票分析 书评、音乐和电影数据爬
取与分析 Google学术文献爬取器 地区空气污染数据分析 微博舆情控制
航空公司客户价挖掘 新闻标题分析 贴吧表情分析 英文文献难度分析 就职网站职业需求统计 比赛数据分析球队风格 知乎热门话题讨论 B站弹幕数据分析 房价数据挖掘
4/23/2017
第一届“全国高校Python语言与计算生态教学研讨会”
基于数据处理与分析的 Python案例展示
张莉 南京大学大学计算机基础教学部
南京大学
基于数据处理与分析的Python案例展示
1
人文社科类
理工类
专业定制
(基础应用) (高级应用) (学科应用)
A
B
C
3条路线
南京大学
基于数据处理与分析的Python案例展示
南京大学
基于数据处理与分析的Python案例展示
16
道指成分股数据获取
File
# Filename: to_excel.py
用更方便的雅 虎财经网站数
据获取API
from datetime import date
import pandas as pd
from matplotlib.finance import quotes_historical_yahoo_ochl
today = date.today()
start = (today.year-1, today.month, today.day)
quotes = quotes_historical_yahoo_ochl('IBM', start, today)
df = pd.DataFrame(quotes)
df.to_excel('stockIBM.xlsx', sheet_name='IBM')
南京大学
基于数据处理与分析的Python案例展示
6
>>> import nltk >>> nltk.download()
南京大学
基于数据处理与分析的Python案例展示
7
古滕堡项目
Source
>>> from nltk.corpus import gutenberg >>> gutenberg.fileids() [u'austen-emma.txt', u'austen-persuasion.txt', u'austen-sense.txt', u'bible-kjv.txt', u'blake-poems.txt', u'bryant-stories.txt', u'burgessbusterbrown.txt', u'carroll-alice.txt', u'chesterton-ball.txt', u'chesterton-brown.txt', u'chesterton-thursday.txt', u'edgeworthparents.txt', u'melville-moby_dick.txt', u'milton-paradise.txt', u'shakespeare-caesar.txt', u'shakespeare-hamlet.txt', u'shakespearemacbeth.txt', u'whitman-leaves.txt']
fd2 = FreqDist([sx.lower() for sx in allwords if sx.isalpha()])
print(fd2.B()) print(fd2.N()) fd2.tabulate(20) fd2.plot(20)
Output: 4699 30266 the and to of i you a my it in that ham is not his this with your but for 993 863 685 610 574 527 511 502 419 400 377 337 328 300 285 276 254 253 249 245
for p in range(10000): weights = np.random.random(self.n) weights /= np.sum(weights) ret = np.sum(self.mean * 252 * weights) self.port_returns.append(ret) if ret < self.y_min: self.y_min = ret self.port_variance.append(np.sqrt(np.dot(weights.T, np.dot(self.cov * 252, weights))))
AvrYffI&lang=en-…%2CregularMarketChangePercent&corsDomain=')
resp = re.json()
for stock in resp['quoteResponse']['result']:
print(stock['symbol'], stock['longName'], stock['regularMarketPrice']['fmt'])
11
美国总统就职演说
Output: [(u'1965-Johnson.txt', FreqDist({3: 355, 2: 301, 1: 256, 4: 255, 5: 138, 7: 133, 6: 127, 8: 68, 9: 45, 10: 30, ...})), (u'1997-Clinton.txt', FreqDist({3: 534, 2: 378, 4: 352, 1: 350, 5: 225, 6: 179, 7: 171, 8: 117, 9: 70, 10: 45, ...})), (u'2009-Obama.txt', FreqDist({3: 599, 2: 441, 4: 422, 1: 350, 5: 236, 6: 225, 7: 198, 8: 96, 9: 63, 10: 59, ...})), …
南京大学
基于数据处理与分析的Python案例展示
9
古滕堡项目
File
# Filename: freqG20.py
from nltk.corpus import gutenberg
from nltk.probability import *
allwords = gutenberg.words('shakespeare-hamlet.txt')
'CAT', 'Caterpillar Inc.', '96.39'
# Filename: dji.py
利用开发者工 具补全
…
import requests
re =
requests.get('/v7/finance/quote?formatted=true&crumb=azVq
Output: [u'Circumstances', u'Guildensterne', u'Incontinencie', u'Recognizances', u'Vnderstanding', u'determination', u'encompassement', u'entertainment', u'imperfections', u'indifferently', u'instrumentall', u'reconcilement', u'stubbornnesse', u'transformation', u'vnderstanding']
2
常用第三方库
科学计算生态系统SciPy(包括NumPy、SciPy、Matplotlib和pandas等) Requests库 BeautifulSoup库 re模块 NLTK自然语言处理包 scikit-learn机器学习包 wordcloud词云 jieba分词 …
南京大学
基于数据处理与分析的Python案例展示
南京大学
基于数据处理与分析的Python案例展示
17
道指成分股数据获取
WxPython GUI开发
# Filename: helloworldbtn.py import wx class Frame1(wx.Frame):
def __init__(self,superior): wx.Frame.__init__(self, parent = superior, title = "Hello World in wxPython") panel = wx.Panel(self) sizer = wx.BoxSizer(wx.VERTICAL) self.text1= wx.TextCtrl(panel, value = "Hello, World!", size = (200,180), style = wx.TE_MULTILINE) sizer.Add(self.text1, 0, wx.ALIGN_TOP | wx.EXPAND) button = wx.Button(panel, label = "Click Me") sizer.Add(button) panel.SetSizerAndFit(sizer) yout() self.Bind(wx.EVT_BUTTON,self.OnClick,button)
南京大学
基于数据处理与分析的Python案例展示
4
人文社科类
1
南京大学
基于数据处理与分析的Python案例展示
5
NltK自然语言处理包
网络和聊 天文本
webtext
就职演说
inaugural
古腾堡
gutenburg
路透社
reuters
其他语言 –
多国语言
布朗
brown
自定义的 语料库
NLTK 语料库
南京大学
基于数据处理与分析的Python案例展示
12
情感挖掘
喜剧类电影 的标语偏向 褒义情感, 而恐怖类电 影的标语偏 向贬义情感
from nltk.corpus import sentiwordnet
南京大学
基于数据处理与分析的Python案例展示
13
经管类
2
南京大学
基于数据处理与分析的Python案例展示
有
4.计算预期组合年化收益、组合方差 Nhomakorabea效
的
5.用蒙特卡洛模拟产生大量随机组合
投
6.投资组合优化1——sharpe最大
资
组
7.投资组合优化2——方差最小
合
8.组合的有效前沿
基于数据处理与分析的Python案例展示
19
道指 成分 股数 据投 资组 合
用蒙特卡洛模拟产生大量随机组合
# 蒙特卡洛随机产生组合 def monte_carlo(self):