數(shù)據(jù)產(chǎn)品經(jīng)理該懂的python技術(shù)

Jack
10 評論 24600 瀏覽 255 收藏 15 分鐘
🔗 B端产品经理需要更多地进行深入的用户访谈、调研、分析,而C端产品经理需要更多地快速的用户测试、反馈、迭代

本文作者詳細介紹了python技術(shù),一起來學(xué)習(xí)一下~

一、Python介紹

小奈:其實你們寫的代碼好像有不同派系的?

大仁:你是說編程語言?我來介紹下吧,我們來看下GitHub(程序員同城交友、代碼協(xié)作平臺)的數(shù)據(jù),看下各種編程語言 Pull Requst的數(shù)據(jù), Javascript的提交量最高,前端的鼎盛時期,python則處于飛速上升中,很有潛力。Java一直很穩(wěn),常年占據(jù)了后端主流編程語言第一。

二、Python熱度為何持續(xù)上漲?

python可以用來干什么呢?

  • 后端開發(fā)語言,常見開發(fā)架構(gòu)django;
  • 數(shù)據(jù)分析,常用庫,pandas;
  • 爬蟲,scrapy;
  • 人工智能,tensorflow。

人工智能和數(shù)據(jù)分析,近年來需求持續(xù)攀升,這方面人才待遇也是水漲船高,既然python那么能干,熱度自然飛速上漲。

三、爬蟲

說到數(shù)據(jù)分析,我們不得不說下數(shù)據(jù)來源,一般是內(nèi)部數(shù)據(jù),也有外部數(shù)據(jù),外部數(shù)據(jù)的獲取有很多種,最常見的方式就是爬蟲了。

爬蟲基于robots協(xié)議可以公開爬去網(wǎng)絡(luò)上的信息。

1.爬蟲工作原理

python中有成熟的爬蟲框架(scrapy、bs4),只要你給爬蟲一個網(wǎng)址,它就可以去爬取,和輸入url類似卻又不同,不同的是爬蟲會把這些html文件里有用的信息抓取回來,而且爬蟲可以爬取該網(wǎng)站相關(guān)的其它鏈接,像是daquan里的abc、123、456等。

小奈:爬取別人的信息會不會違法?

大仁:看你怎么爬取,其實有個爬蟲協(xié)議(robots),每個網(wǎng)站都可以聲明,其實就是聲明哪些文件可以、哪些不可以,下面以淘寶網(wǎng)的robots.txt為例:

User-agent: Baiduspider

Allow: /article

Allow: /oshtml

Disallow: /product/

Disallow: /

遵循robots協(xié)議后,爬取的數(shù)據(jù)不用于商用,基本上沒事,商用的話目前還是灰色地帶,混沌蠻荒階段。(拋磚引玉,求專業(yè)人士解答下)

2.淘寶對百度的屏蔽

當年還可以在百度里搜索到淘寶商品信息,后來淘寶決定對搜索引擎實施不同程度的屏蔽,那時候淘寶體量還沒那么大,屏蔽百度,會少了很多站外流量。

但是這個關(guān)鍵性的決定,讓用戶心智統(tǒng)一(淘寶里才可以搜索商品),后面現(xiàn)金流般的淘寶廣告就更不說了,站在當時,很考驗產(chǎn)品決策人。

3.搜索引擎

爬蟲似乎和搜索引擎密切相關(guān),是的,是時候來科普下,搜索引擎的工作原理。

假如你在“JackSearch”這個搜索引擎里,輸入“產(chǎn)品經(jīng)理”,那么當你點擊搜索時,服務(wù)器就會去數(shù)據(jù)庫查找,返回相關(guān)的文件信息,那么你就會問,這些文件是哪來的?
是爬蟲們?nèi)ゾW(wǎng)頁世界里爬取的。

當然,搜索引擎遠比這個復(fù)雜,爬蟲抓取回來的信息,還需要存儲,建立索引,這個推薦一本書《Luence》。

4.數(shù)據(jù)產(chǎn)品經(jīng)理(ex-developer)常用工具

在上古時代,Unix系統(tǒng)連界面都沒有,程序員都還是用vi來寫代碼的,就是密密麻麻黑乎乎的命令行狀態(tài)。到了今天,依然有部分極客只用命令行(terminal)來寫代碼,然后現(xiàn)在生活條件好了,大部分程序員都是用集成開發(fā)環(huán)境,這樣子可以提高效率,省下不少腦力。

5.PyCharm?(python的集成開發(fā)環(huán)境)

  • 數(shù)據(jù)庫工具:navicat(for mysql)、robomngo(for mongodb)
  • 后端開發(fā)工具:jetbian公司系列,webstorm(for JavaScript)、pycharm(for python)
  • 代碼管理工具:sourcetree(for git)、svn
  • 原型工具:axure、墨刀、etc

簡單介紹下pycharm,大概長這樣子,左邊是項目文件(1.py , 2.py),?主界面是文件代碼編寫窗口,底部是調(diào)試窗口。

6.爬蟲框架scrapy

Scrapy:Python開發(fā)的一個快速、高層次的屏幕抓取和web抓取框架,用于抓取web站點并從頁面中提取結(jié)構(gòu)化的數(shù)據(jù)。Scrapy用途廣泛,可以用于數(shù)據(jù)挖掘、監(jiān)測和自動化測試。

這里不得不說下,scrapy是分布式爬蟲框架,如何理解?上次也有介紹分布式,分布式就是假如100只爬蟲,今天的任務(wù)是爬取100本小說,那么如果一百臺機器,機器上各有一只,每只爬不同的一部小說,那就是分布式。

分布式爬蟲方便性能擴張,極大提高程序的抓取效率。

7.爬蟲實踐

  1. ?新建工程?scrapy startproject tutorial;
  2. ?創(chuàng)建爬蟲?scrapy genspider -t xxx.com;
  3. ?修改settings.py,在settings.py中修改DEFAULT_REQUEST_HEADERA和USER_AGENT;
  4. 定義item:DemoItem(scrapy.Item);name = scrapy.Field();title = scrapy.Field();link = scrapy.Field();info = scrapy.Field()
  5. 編寫spider爬蟲邏輯;
  6. 儲存到數(shù)據(jù)庫(mysql、mongodb、etc)。

8.不想寫爬蟲又想抓數(shù)據(jù)?

當然可以的,常見有八抓魚、火車頭之類。八爪魚有一些優(yōu)勢,比如學(xué)習(xí)成本低,可視化流程,快速搭建采集系統(tǒng);能直接導(dǎo)出excel文件和導(dǎo)出到數(shù)據(jù)庫中;降低采集成本,云采集提供10個節(jié)點,也能省事不少。

四、數(shù)據(jù)分析告訴你,天龍八部在講什么?

小奈:那python在數(shù)據(jù)分析工作中,如何發(fā)揮作用呢?

大仁:數(shù)據(jù)分析可以用python、r、第三方分析工具,都可以,但最主要還是結(jié)合業(yè)務(wù),要有分析思路,這個就要求有業(yè)務(wù)經(jīng)驗了,我舉個例子吧,我??葱≌f,就以天龍八部為例子吧。

“天龍八部”是哪八部?“天龍八部”都是“非人”,包括八種神道怪物,因為以“天”及“龍”為首,所以稱為“天龍八部”。
八部者,一天,二龍,三夜叉,四乾達婆,五阿修羅,六迦樓羅,七緊那羅,八摩呼羅迦。

看完介紹,還是不懂,沒關(guān)系,今天主要講的是,用數(shù)據(jù)分析天龍八部里高頻詞語、人物關(guān)系、(關(guān)系真的很復(fù)雜,電腦都跑的發(fā)燙,瑟瑟發(fā)抖)以及究竟在講啥?

1.自己?

看到下面的詞云,為什么“自己”這個詞,那么高頻?估計和寫作人稱有關(guān),上帝視角?(有點不解,求天龍粉解答)

乍看之下,段譽詞頻(1551)最高,其實要結(jié)合“業(yè)務(wù)”,實則喬峰才是正主。要從喬峰的身世說起,開頭中,喬峰是丐幫幫主,后身世揭破,契丹人也,改名蕭峰。

所以喬峰的詞頻(1900+)=喬峰(963)+蕭峰(966)。

從詞語中,我們可以看出,寫作手法,喬峰(段譽)聽/笑/呆/動詞,所以人物+動詞。

2.人物關(guān)系圖

故事有好多條主線。

(1)尋仇:

其中虛竹和喬峰,為什么關(guān)系最親密?因為虛竹的爸是殺死喬峰的爸的帶頭大哥,尋仇是小說的主線之一。

(2)段正淳戀愛史:

從另一角度看,可以說是,大理鎮(zhèn)南王,段正淳戀愛史,他和幾位女人談戀愛,并生下的都全都是女兒,女兒再一個個和段譽談戀愛,搞得段譽很痛苦,最后發(fā)現(xiàn)自己不是親生的故事。

總結(jié)來說:故事是由“慕容博”和“段正淳”,兩位大Boss挑起的,各負責一條主線:

  1. 慕容博想光復(fù)燕國,才策劃殺死蕭家,企圖引起兩國戰(zhàn)亂,引起蕭父報仇;
  2. 鎮(zhèn)南王,則是負責拈花若草,一身情債,一個人很爽,搞得很多人很痛苦,最后自殺。

五、實戰(zhàn)

1.詞云

這里主要用到了兩個庫:jieba分詞用的,wordcloud詞云用,matplib顯示用。

  1. 下載小說txt文件;
  2. 準備一張mask(遮罩)圖片;
  3. 字體;

#coding:utf-8

from os import path

from collections import Counter

import jieba

from PIL import Image

import numpy as np

import matplotlib.pyplot as plt

from wordcloud import WordCloud, STOPWORDS

if __name__==’__main__’:

#讀取文件

d = path.dirname(__file__)

pardir = path.dirname(d)

pardir2 = path.dirname(pardir)

cyqf = path.join(pardir2,’tlbbqf/’)

text = open(path.join(d,’tlbb.txt’), encoding=”utf-8″, errors=”surrogateescape”).read()

jieba_word = jieba.cut(text, cut_all=False) #cut_all 分詞模式

data = []

for word in jieba_word:

data.append(word)

dataDict = Counter(data)

with open(‘./詞頻統(tǒng)計.csv’, ‘w’, encoding=’utf-8′) as fw:

for k,v in dataDict.items():

fw.write(“%s,%d\n” % (k,v))

mask = np.array(Image.open(path.join(d, “mask.png”)))

font_path=path.join(d,”font.ttf”)

stopwords = set(STOPWORDS)

wc = WordCloud(background_color=”white”,

max_words=2000,

mask=mask,

stopwords=stopwords,

font_path=font_path)

# 生成詞云

wc.generate(text)

# 生成的詞云圖像保存到本地

wc.to_file(path.join(d, “wordcloud.png”))

# 顯示圖像

plt.imshow(wc, interpolation=’bilinear’)

plt.axis(“off”)

plt.show()

2.人物關(guān)系圖

(1)統(tǒng)計詞頻

  text = open(path.join(d,'tlbb.txt'), encoding="utf-8", errors="surrogateescape").read()
    jieba_word = jieba.cut(text, cut_all=False)   #cut_all 分詞模式
    data = []
    for word in jieba_word:
        data.append(word)
    dataDict = Counter(data)

(2)計算人物之間矩陣關(guān)系

(3)用gephi畫出人物關(guān)系

首先是導(dǎo)入關(guān)系圖,逗號、矩陣、utf-8;

然后就是箭頭,第一個是顯示節(jié)點信息,第二、三是調(diào)整連線的粗細、顏色;

點擊某個節(jié)點,例如段譽,可以側(cè)重顯示他的人物關(guān)系。

六、最后

數(shù)據(jù)分析產(chǎn)品經(jīng)理,該具備什么素質(zhì)?

最核心的當然是分析經(jīng)驗/思路,但是基本的數(shù)據(jù)分析能力還是得有,最常見的就是Python或R,這里推薦下python吧,動手能力強的話可以做點其它的。

接下來會帶來,一些機器學(xué)習(xí)的東西,不知道大家有沒有興趣?

人工智能,比較有趣的一個方向,大家一起努力吧。

 

作者:Jack,新零售數(shù)據(jù)PM,公眾號:產(chǎn)品經(jīng)理的技術(shù)課堂

本文由 @Jack 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載

題圖來自 pexels,基于 CC0 協(xié)議

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 大家期待已久的《數(shù)據(jù)產(chǎn)品經(jīng)理實戰(zhàn)訓(xùn)練營》終于在起點學(xué)院(人人都是產(chǎn)品經(jīng)理旗下教育機構(gòu))上線啦!

    本課程非常適合新手數(shù)據(jù)產(chǎn)品經(jīng)理,或者想要轉(zhuǎn)崗的產(chǎn)品經(jīng)理、數(shù)據(jù)分析師、研發(fā)、產(chǎn)品運營等人群。

    課程會從基礎(chǔ)概念,到核心技能,再通過典型數(shù)據(jù)分析平臺的實戰(zhàn),幫助大家構(gòu)建完整的知識體系,掌握數(shù)據(jù)產(chǎn)品經(jīng)理的基本功。

    學(xué)完后你會掌握怎么建指標體系、指標字典,如何設(shè)計數(shù)據(jù)埋點、保證數(shù)據(jù)質(zhì)量,規(guī)劃大數(shù)據(jù)分析平臺等實際工作技能~

    現(xiàn)在就添加空空老師(微信id:anne012520),咨詢課程詳情并領(lǐng)取福利優(yōu)惠吧!

    來自廣東 回復(fù)
  2. 我是python小白,該怎么進行python的學(xué)習(xí)呢,麻煩詳細些。

    來自安徽 回復(fù)
  3. 哇,原來你還會Python啊

    來自廣東 回復(fù)
    1. 雕蟲小技,何足掛齒

      來自廣東 回復(fù)
  4. 這篇文章被百度百家、頭條號、各種抄襲,求平臺幫我維權(quán),是照搬人人這邊的。

    http://baijiahao.baidu.com/s?id=1601130309684586205
    http://baijiahao.baidu.com/s?id=1598116956475318375
    http://baijiahao.baidu.com/s?id=1598194605554142083

    來自廣東 回復(fù)
    1. 支持作者,文章一路追過來,能看出付出很多心血總結(jié)~~原創(chuàng)應(yīng)該被尊重

      來自北京 回復(fù)
    2. 感謝認可,最近差評 洗稿事件 抄襲這些 太多了 原創(chuàng)應(yīng)該得到尊重

      來自廣東 回復(fù)
    3. 平臺幫你維權(quán)了嗎?怎么維權(quán)?

      來自北京 回復(fù)
    4. 平臺沒有,維權(quán)騎士吧,不過百家號抄襲太猖獗了

      來自廣東 回復(fù)
    5. 支持維權(quán)

      來自廣東 回復(fù)
专题
20608人已学习15篇文章
AARRR模型是一个经典的增长漏斗模型。本专题的文章针对AARRR模型进行拆解解读。
专题
14755人已学习13篇文章
本文作者总结了那些踩过的坑,为大家详细的罗列出了规范的产品管理流程及规范。
专题
12328人已学习12篇文章
广告营销是为了销售产品,既然花了钱当然希望能给产品的销量带来增长。本专题的文章分享了广告营销指南。
专题
33803人已学习16篇文章
信息流背后有着怎样的逻辑和策略?
专题
104015人已学习5篇文章
PRD、MRD、DRD、BRD各种文档撰写方法在这里。
专题
12958人已学习15篇文章
该如何有效推广?有效推广的策略有哪些呢?本专题的文章分享了产品推广策略。