『壹』 如何學習數據分析
首先我說說這兩種方向共同需要的技術面,當然以下只是按照數據分析入門的標准來寫:
1. SQL(資料庫),我們都知道數據分析師每天都會處理海量的數據,這些數據來源於資料庫,那麼怎麼從資料庫取數據?如何建立兩表、三表之間的關系?怎麼取到自己想要的特定的數據?等等這些數據選擇問題就是你首要考慮的問題,而這些問題都是通過SQL解決的,所以SQL是數據分析的最基礎的技能,零基礎學習SQL可以閱讀這里:SQL教程_w3cschool
2. 統計學基礎,數據分析的前提要對數據有感知,數據如何收集?數據整體分布是怎樣的?如果有時間維度的話隨著時間的變化是怎樣的?數據的平均值是什麼?數據的最大值最小值指什麼?數據相關與回歸、時間序列分析和預測等等,這些在網易公開課上倒是有不錯的教程:哈里斯堡社區大學公開課:統計學入門_全24集_網易公開課
3.Python或者R的基礎,這一點是必備項也是加分項,在數據挖掘方向是必備項,語言相比較工具更加靈活也更加實用。至於學習資料:R語言我不太清楚,Python方向可以在廖雪峰廖老師的博客里看Python教程,面向零基礎。
再說說兩者有區別的技能樹:
1.數據挖掘向
我先打個前哨,想要在一兩個月內快速成為數據挖掘向的數據分析師基本不可能,做數據挖掘必須要底子深基礎牢,編程語言基礎、演算法、數據結構、統計學知識樣樣不能少,而這些不是你自習一兩個月就能完全掌握的。
所以想做數據挖掘方向的,一定要花時間把軟體工程專業學習的計算機基礎課程看完,這些課程包括:數據結構、演算法,可以在這里一探究竟:如何學習數據結構?
在此之後你可以動手用Python去嘗試實現數據挖掘的十八大演算法:數據挖掘18大演算法實現以及其他相關經典DM演算法
2.產品經理向
產品經理向需要你對業務感知能力強,對數據十分敏感,掌握常用的一些業務分析模型套路,企業經常招聘的崗位是:商業分析、數據運營、用戶研究、策略分析等等。這方面的學習書籍就很多,看得越多掌握的方法越多,我說幾本我看過的或者很多人推薦的書籍:《增長黑客》、《網站分析實戰》、《精益數據分析》、《深入淺出數據分析》、《啤酒與尿布》、《數據之魅》、《Storytelling with Data》
『貳』 錄入好的調查問卷,該如何進行數據分析
SPSS分析調查問卷數據的方法
當我們的調查問卷在把調查數據拿回來後,我們該做的工作就是用相關的統計軟體進行處理,在此,我們以spss為處理軟體,來簡要說明一下問卷的處理過程,它的過程大致可分為四個過程:定義變數﹑數據錄入﹑統計分析和結果保存.下面將從這四個方面來對問卷的處理做詳細的介紹.
Spss處理:
第一步:定義變數
大多數情況下我們需要從頭定義變數,在打開SPSS後,我們可以看到和excel相似的界面,在界面的左下方可以看到Data View, Variable View兩個標簽,只需單擊左下方的Variable View標簽就可以切換到變數定義界面開始定義新變數。在表格上方可以看到一個變數要設置如下幾項:name(變數名)、type(變數類型)、width(變數值的寬度)、decimals(小數位) 、label(變數標簽) 、Values(定義具體變數值的標簽)、Missing(定義變數缺失值)、Colomns(定義顯示列寬)、Align(定義顯示對齊方式)、Measure(定義變數類型是連續、有序分類還是無序分類).
我們知道在spss中,我們可以把一份問卷上面的每一個問題設為一個變數,這樣一份問卷有多少個問題就要有多少個變數與之對應,每一個問題的答案即為變數的取值.現在我們以問卷第一個問題為例來說明變數的設置.為了便於說明,可假設此題為:
1.請問你的年齡屬於下面哪一個年齡段( )?
A:20—29 B:30—39 C:40—49 D:50--59
那麼我們的變數設置可如下: name即變數名為1,type即類型可根據答案的類型設置,答案我們可以用1、2、3、4來代替A、B、C、D,所以我們選擇數字型的,即選擇Numeric, width寬度為4,decimals即小數位數位為0(因為答案沒有小數點),label即變數標簽為「年齡段查詢」。Values用於定義具體變數值的標簽,單擊Value框右半部的省略號,會彈出變數值標簽對話框,在第一個文本框里輸入1,第二個輸入20—29,然後單擊添加即可.同樣道理我們可做如下設置,即1=20—29、2=30—39、3=40—49、4=50--59;Missing,用於定義變數缺失值, 單擊missing框右側的省略號,會彈出缺失值對話框, 界面上有一列三個單選鈕,默認值為最上方的「無缺失值」;第二項為「不連續缺失值」,最多可以定義3個值;最後一項為「缺失值范圍加可選的一個缺失值」,在此我們不設置預設值,所以選中第一項如圖;Colomns,定義顯示列寬,可自己根據實際情況設置;Align,定義顯示對齊方式,有居左、居右、居中三種方式;Measure,定義變數類型是連續、有序分類還是無序分類。
以上為問卷中常見的單項選擇題型的變數設置,下面將對一些特殊情況的變數設置也作一下說明.
1.開放式題型的設置:諸如你所在的省份是_____這樣的填空題即為開放題,設置這些變數的時候只需要將Value 、Missing兩項不設置即可.
2.多選題的變數設置:這類題型的設置有兩種方法即多重二分法和多重分類法,在這里我們只對多重二分法進行介紹.這種方法的基本思想是把該題每一個選項設置成一個變數,然後將每一個選項拆分為兩個選項項,即選中該項和不選中該項.現在舉例來說明在spss中的具體操作.比如如下一例:
請問您通常獲取新聞的方式有哪些( )
1 報紙 2 雜志 3 電視 4 收音機 5 網路
在spss中設置變數時可為此題設置五個變數,假如此題為問卷第三題,那麼變數名分別為3_1、3_2、3_3、3_4、3_5,然後每一個選項有兩個選項選中和不選中,只需在Value一項中為每一個變數設置成1=選中此項、0=不選中此項即可.
使用該窗口,我們可以把一個問卷中的所有問題作為變數在這個窗口中一次定義。
到此,我們的定義變數的工作就基本上可以結束了.下面我們要作就是數據的錄入了.首先,我們要回到數據錄入窗口,這很簡單,只要我們點擊軟體左下方的Data View標簽就可以了.
第二步:數據錄入
Spss數據錄入有很多方式,大致有一下幾種:
1.讀取SPSS格式的數據
2.讀取Excel等格式的數據
3.讀取文本數據(Fixed和Delimiter)
4.讀取資料庫格式數據(分如下兩步)
(1)配置ODBC (2)在SPSS中通過ODBC和資料庫進行
但是對於問卷的數據錄入其實很簡單,只要在spss的數據錄入窗口中直接輸入就可以了,只是在這里有幾點注意的事項需要說明一下.
1. 在數據錄入窗口,我們可以看到有一個表格,這個表格中的每一行代表一份問卷,我們也稱為一個個案.
2. 在數據錄入窗口中,我們可以看到表格上方出現了1、2、3、4、5…….的標簽名,這其實是我們在第一步定義變數中,我們為問卷的每一個問題取的變數名,即1代表第一題,2代表第二題.以次類推.我們只需要在變數名下面輸入對應問題的答案即可完成問卷的數據錄入.比如上述年齡段查詢的例題,如果問卷上勾選了A答案,我們在1下面輸入1就行了(不要忘記我們通常是用1、2、3、4來代替A、B、C、D的).
3.我們知道一行代表一份問卷,所以有幾分問卷,就要有幾行的數據.
在數據錄入完成後,我們要做的就是我們的關鍵部分,即問卷的統計分析了,因為這時我們已經把問卷中的數據錄入我們的軟體中了.
第三步:統計分析
有了數據,可以利用SPSS的各種分析方法進行分析,但選擇何種統計分析方法,即調用哪個統計分析過程,是得到正確分析結果的關鍵。這要根據我們的問卷調查的目的和我們想要什麼樣的結果來選擇.SPSS有數值分析和作圖分析兩類方法.
1.作圖分析:
在SPSS中,除了生存分析所用的生存曲線圖被整合到Analyze菜單中外,其他的統計繪圖功能均放置在graph菜單中。該菜單具體分為以下幾部分::
(1)Gallery:相當於一個自學向導,將統計繪圖功能做了簡單的介紹,初學者可以通過它對SPSS的繪圖能力有一個大致的了解。
(2)Interactive:互動式統計圖。
(3)Map:統計地圖。
(4)下方的其他菜單項是我們最為常用的普通統計圖,具體來說有:
條圖
散點圖
線圖
直方圖
餅圖
面積圖
箱式圖
正態Q-Q圖
正態P-P圖
質量控制圖
Pareto圖
自回歸曲線圖
高低圖
交互相關圖
序列圖
頻譜圖
誤差線圖
作圖分析簡單易懂,一目瞭然,我們可根據需要來選擇我們需要作的圖形,一般來講,我們較常用的有條圖,直方圖,正態圖,散點圖,餅圖等等,具體操作很簡單,大家可參閱相關書籍,作圖分析更多情況下是和數值分析相結合來對試卷進行分析的,這樣的效果更好.
2.數值分析:
SPSS 數值統計分析過程均在Analyze菜單中,包括:
(1)、Reports和Descriptive Statistics:又稱為基本統計分析.基本統計分析是進行其他更深入的統計分析的前提,通過基本統計分析,用戶可以對分析數據的總體特徵有比較准確的把握,從而選擇更為深入的分析方法對分析對象進行研究。Reports和Descriptive Statistics命令項中包括的功能是對單變數的描述統計分析。
Descriptive Statistics包括的統計功能有:
Frequencies(頻數分析):作用:了解變數的取值分布情況
Descriptives(描述統計量分析):功能:了解數據的基本統計特徵和對指定的變數值進行標准化處理
Explore(探索分析):功能:考察數據的奇異性和分布特徵
Crosstabs(交叉分析):功能:分析事物(變數)之間的相互影響和關系
Reports包括的統計功能有:
OLAP Cubes(OLAP報告摘要表):功能: 以分組變數為基礎,計算各組的總計、均值和其他統計量。而輸出的報告摘要則是指每個組中所包含的各種變數的統計信息。
Case Summaries(觀測量列表):察看或列印所需要的變數值
Report Summaries in Row:行形式輸出報告
Report Summaries in Columns:列形式輸出報告
(2)、Compare Means(均值比較與檢驗):能否用樣本均值估計總體均值?兩個變數均值接近的樣本是否來自均值相同的總體?換句話說,兩組樣本某變數均值不同,其差異是否具有統計意義?能否說明總體差異?這是各種研究工作中經常提出的問題。這就要進行均值比較。
以下是進行均值比較及檢驗的過程:
MEANS過程:不同水平下(不同組)的描述統計量,如男女的平均工資,各工種的平均工資。目的在於比較。術語:水平數(指分類變數的值數,如sex變數有2個值,稱為有兩個水平)、單元Cell(指因變數按分類變數值所分的組)、水平組合
T test 過程:對樣本進行T檢驗的過程
單一樣本的T檢驗:檢驗單個變數的均值是否與給定的常數之間存在差異。
獨立樣本的T檢驗:檢驗兩組不相關的樣本是否來自具有相同均值的總體(均值是否相同,如男女的平均收入是否相同,是否有顯著性差異)
配對T檢驗:檢驗兩組相關的樣本是否來自具有相同均值的總體(前後比較,如訓練效果,治療效果)
one-Way ANOVA:一元(單因素)方差分析,用於檢驗幾個(三個或三個以上)獨立的組,是否來自均值相同的總體。
(3)、ANOVA Models(方差分析):方差分析是檢驗多組樣本均值間的差異是否具有統計意義的一種方法。例如:醫學界研究幾種葯物對某種疾病的療效;農業研究土壤、肥料、日照時間等因素對某種農作物產量的影響;不同飼料對牲畜體重增長的效果等,都可以使用方差分析方法去解決
(4)、Correlate(相關分析):它是研究變數間密切程度的一種常用統計方法,常用的相關分析有以下幾種:
1、線性相關分析:研究兩個變數間線性關系的程度。用相關系數r來描述。
2、偏相關分析:它描述的是當控制了一個或幾個另外的變數的影響條件下兩個變數間的相關性,如控制年齡和工作經驗的影響,估計工資收入與受教育水平之間的相關關系
3、相似性測度:兩個或若干個變數、兩個或兩組觀測量之間的關系有時也可以用相似性或不相似性來描述。相似性測度用大值表示很相似,而不相似性用距離或不相似性來描述,大值表示相差甚遠
(5)、Regression(回歸分析):功能:尋求有關聯(相關)的變數之間的關系在回歸過程中包括:Liner:線性回歸;Curve Estimation:曲線估計;Binary Logistic:二分變數邏輯回歸;Multinomial Logistic:多分變數邏輯回歸;Ordinal 序回歸;Probit:概率單位回歸;Nonlinear:非線性回歸;Weight Estimation:加權估計;2-Stage Least squares:二段最小平方法;Optimal Scaling最優編碼回歸;其中最常用的為前面三個.
(6)、Nonparametric Tests(非參數檢驗):是指在總體不服從正態分布且分布情況不明時,用來檢驗數據資料是否來自同一個總體假設的一類檢驗方法。由於這些方法一般不涉及總體參數故得名。
非參數檢驗的過程有以下幾個:
1.Chi-Square test 卡方檢驗
2.Binomial test 二項分布檢驗
3.Runs test 遊程檢驗
4.1-Sample Kolmogorov-Smirnov test 一個樣本柯爾莫哥洛夫-斯米諾夫檢驗
5.2 independent Samples Test 兩個獨立樣本檢驗
6.K independent Samples Test K個獨立樣本檢驗
7.2 related Samples Test 兩個相關樣本檢驗
8.K related Samples Test 兩個相關樣本檢驗
(7)、Data Rection(因子分析)
(8)、Classify(聚類與判別)等等
以上就是數值統計分析Analyze菜單下幾項用於分析的數值統計分析方法的簡介,在我們的變數定義以及數據錄入完成後,我們就可以根據我們的需要在以上幾種分析方法中選擇若干種對我們的問卷數據進行統計分析,來得到我們想要的結果.
第四步:結果保存
我們的spss軟體會把我們統計分析的多有結果保存在一個窗口中即結果輸出窗口(output),由於spss軟體支持復制和粘貼功能,這樣我們就可以把我們想要的結果復制﹑粘貼到我們的報告中,當然我們也可以在菜單中執行file->save來保存我們的結果,一般情況下,我們建議保存我們的數據,結果可不保存.因為只要有了數據,如果我們想要結果的,我們可以隨時利用數據得到結果.
總結:
以上便是spss處理問卷的四個步驟,四個步驟結束後,我們需要spss軟體做的工作基本上也就結束了,接下來的任務就是寫我們的統計報告了.值得一提的是.spss是一款在社會統計學應用非常廣泛的統計類軟體,學好它將對我們以後的工作學習產生很大的意義和作用.
SPSS的問卷分析中一份問卷是一個案,首先要根據問卷問題的不同定義變數。定義變數值得注意的兩點:一區分變數的度量,Measure的值,其中Scale是定量、Ordinal是定序、Nominal是指定類;二 注意定義不同的數據類型Type
各色各樣的問卷題目的類型大致可以分為單選、多選、排序、開放題目四種類型,他們的變數的定義和處理的方法各有不同,我們詳細舉例介紹如下:
1 單選題:答案只能有一個選項
例一 當前貴組織機構是否設有面向組織的職業生涯規劃系統?
A有 B 正在開創 C沒有 D曾經有過但已中斷
編碼:只定義一個變數,Value值1、2、3、4分別代表A、B、C、D 四個選項。
錄入:錄入選項對應值,如選C則錄入3
2 多選題:答案可以有多個選項,其中又有項數不定多選和項數定多選。
(1)方法一(二分法):
例二 貴處的職業生涯規劃系統工作涵蓋哪些組群?畫鉤時請把所有提示
考慮在內。
A月薪員工 B日薪員工 C鍾點工
編碼:把每一個相應選項定義為一個變數,每一個變數Value值均如下定義:「0」 未選,「1」 選。
錄入:被調查者選了的選項錄入1、沒選錄入0,如選擇被調查者選AC,則三個變數分別錄入為1、0、1。
(2)方法二:
例三 你認為開展保持黨員先進性教育活動的最重要的目標是那三項:
1( ) 2 ( ) 3( )
A、提高黨員素質 B、加強基層組織 C、堅持發揚民主
D、激發創業熱情 E、服務人民群眾 F、促進各項工作
編碼:定義三個變數分別代表題目中的1、2、3三個括弧,三個變數Value值均同樣的以對應的選項定義,即:「1」 A,「2」B,「3」 C,「4」 D,「5」 E,「6」 F
錄入:錄入的數值1、2、3、4、5、6分別代表選項ABCDEF,相應錄入到每個括弧對應的變數下。如被調查者三個括弧分別選ACF,則在三個變數下分別錄入1、3、6。
註:能用方法二編碼的多選題也能用方法編碼,但是項數不定的多選只能用二分法,即方法一是多選題一般處理方法。
3 排序題: 對選項重要性進行排序
例四 您購買商品時在 ①品牌 ②流行 ③質量 ④實用 ⑤價格 中對它們的關注程度先後順序是(請填代號重新排列)
第一位 第二位 第三位 第四位 第五位
編碼:定義五個變數,分別可以代表第一位 第五位,每個變數的Value都做如下定義:「1」 品牌,「2」 流行,「3」 質量,「4」 實用,「5」 價格
錄入:錄入的數字1、2、3、4、5分別代表五個選項,如被調查者把質量排在第一位則在代表第一位的變數下輸入「3「。
4 選擇排序題:
例五 把例三中的問題改為「你認為開展保持黨員先進性教育活動的最重
的目標是那三項,並按重要性從高到低排序」,選項不變。
編碼:以ABCDEF6個選項分別對應定義6個變數,每個變數的Value都做同樣的如下定義:「1」 未選,「2」 排第一,「3」 排第二,「4」 排第三。
錄入:以變數的Value值錄入。比如三個括弧里分別選的是 ECF,則該題的6個變數的值應該分別錄入:1(代表A選項未選)、1、 3(代表C選項排在第二)、1、2、4。
註:該方法是對多選題和排序題的方法結合的一種方法,對一般排序題(例四)也同樣適用,只是兩者用的分析方法不同(例四用頻數分析、例五用描述分析),輸出結果從不同的側面反映問題的重要性(前一種方法從位次從變數的頻數看排序,後一種方法從變數出發看排序)。
5 開放性數值題和量表題:這類題目要求被調查者自己填入數值,或者打分
例六 你的年齡(實歲):______
編碼:一個變數,不定義Value值
錄入:即錄入被調查者實際填入的數值。
6開放性文字題:
如果可能的話可以按照含義相似的答案進行編碼,轉換成為封閉式選項進行分析。如果答案內容較為豐富、不容易歸類的,應對這類問題直接做定性分析。
三 問卷一般性分析
下面具體介紹SPSS中問卷的一般處理方法,操作以版本spss13.0為例,以下提到的菜單項均在Analyze主菜單下
1頻數分析:Frequencies過程可以做單變數的頻數分布表;顯示數據文件中由用戶指定的變數的特定值發生的頻數;獲得某些描述統計量和描述數值范圍的統計量。
適用范圍:單選題(例一),排序題(例四),多選題的方法二(例三)
頻數分析也是問卷分析中最常用的方法。
實現: Descriptive statistics……Frequencies
2 描述分析:Descriptives:過程可以計算單變數的描述統計量。這些述統計量有平均值、算術和、標准差,最大值、最小值、方差、范圍和平均數標准誤等。
適用范圍:選擇並排序題(例五)、開放性數值題(例六)。
實現: Descriptive statistics……Descriptives,需要的統計量點擊按鈕Statistics…中選擇
3 多重反應下的頻次分析:
適用范圍:多選題的二分法(例二)
實現:第一步在Multiple Response……Define Sets把一道多選問題中定義了的所有變數集合在一起,給新的集合變數取名,在Dichotomies Counted value中輸入1。第二步在Multiple Response……Frequencies中做頻數分析。
4 交叉頻數分析:解決對多變數的各水平組合的頻數分析的問題
適用范圍:,適用於由兩個或兩個以上變數進行交叉分類形成的列聯表,對變數之間的關聯性進行分析。比如要知道不同工作性質的人上班使用交通工具的情況,可以通過交叉分析得到一個二維頻數表則一目瞭然。
實現:第一步根據分析的目的來確定交叉分析的選項,確定控制變數和解釋變數(如上例中不同工作性質的人是控制變數,使用交通工具是解釋變數)。第二步選擇Descriptive statistics……Crosstabs
四 簡單圖形描述介紹
在做上述頻數分析、描述分析等分析時就可以直接做出圖形,簡單方便,同時也可以另外作圖。SPSS的作圖功能在菜單Graphs下,功能強大,圖形清晰優美。現在把常用圖簡單介紹如下
1餅圖:又稱圓圖,是以圓的面積代表被研究對象的總體,按各構成部分佔總體比重的大小把圓面積分割成若干扇形,用以表示現象的部分對總體的比例關系的統計圖。頻數分析的結果宜用餅圖表示。
2曲線圖:是用線段的升降來說明數據變動情況的一種統計圖。它主要表示現象在時間上的變化趨勢、現象的分配情況和2個現象的依存關系等。
3面積圖:用線段下的陰影面積來強調現象變化的統計圖。
4條形圖:利用相同寬度條形的長短或高低表現統計數據大小及變化的統計圖。
五 問卷深入分析
除了以上簡單的分析,spss強大的功能還可以對問卷進行深入分析,比如常用的有聚類分析、交叉分析、因子分析、均值比分析(參數檢驗)、相關分析、回歸分析等。因為涉及到很專業的統計知識,下面只將個人覺得比較有用的方法的適用范圍和分析目的簡單做介紹:
1聚類分析
樣本聚類,可以將被調查者分類,並按照這些屬性計算各類的比例,以便明確研究所關心的群體。比如按消費特徵對被調查者的進行聚類。
2 相關分析
相關分析是針對兩變數或者多變數之間是否存在相關關系的分析方法,要根據變數不同特徵選擇不同的相關性的度量方式。問卷分析中的多數用的變數都屬於分類變數,要採用斯皮爾曼相關系數。
其中可以用卡方檢驗,其是對兩變數之間是否具有顯著性影響的分析方法
3均值的比較與檢驗
(1)Means過程:對指定變數綜合描述分析,分組計算計算均值再比較。比如可以按性別變數分為男和女來研究二者收入是否存在差距。
(2)T 檢驗:
獨立樣本t檢驗用於不相關的樣本是否開來自具有相同均值的總體的檢驗。比如,研究購買該產品的顧客和不購買的顧客的收入是否有明顯差異。
如果樣本不獨立則要用配對t檢驗。比如研究參加職業培訓後 工作效率是否提高。
4 回歸分析
問卷分析中的回歸分析常採用的是用離散回歸模型,一般是邏輯斯蒂模型,解釋一個變數對另一變數的影響具體有多大。比如,研究對某商品的消費受收入的影響程度。
問卷調查表
可以進行很多種統計分析的,包含描述性分析,信度,效度分析,差異性分析,相關性分析,回歸分析等等
分析方法太多了
我替別人做這類的數據分析蠻多的
把你問卷發一份過來[email protected]
首先你可以計算每個部門每個工作職責滿意不滿意度,然後看那個業務在這個部門中不滿意度最高,滿意度最高,需要加強哪一個業務,需要表揚哪一個業務;然後部門之間進行比較,看看哪個部門滿意度最高,哪個部門滿意度最低,需要表揚需要批評的都知道了。
數據分析最重要的思維就是,不斷確定業務中兩組變數之間的關系,用以解釋業務。
收入、轉化、用戶規模、用戶活躍等,我們稱為現象。而只有通過數據量化的現象,我們才能精準感知。所以,數據是用來描述現象的,是被量化的現象。
關於數據,有兩種常見的情況。從騰訊出來的一個朋友曾告訴我「騰訊的數據太多,都不知道怎麼看」,而另一個在創業公司工作的朋友告訴我「老闆為了省開發資源,數據給的少得可憐」。這兩種情況都有點走極端,那麼,怎樣看數據比較合理呢?答案是:需要想清楚3個問題。 1、我為什麼要看數據? 看數據的理由有很多,有不少PM看數據純粹為了在吵架中能占上風,也有的人是為了炫技,還有一些人是因為老闆要他們這樣做。但我認為,看數據最好的理由是「你真的渴望持續改進自己的產品,而數據能給你客觀的建議 」。如果你沒有這個渴望,覺得「我已經做的很好了,沒有幾個人能比我做得更好」,不但可以不看數據,連用戶都可以不要。 2、數據的由哪些成分組成?這些成分每天/周/月都發生了什麼變化? 分析數據的構成可以更精確的知道是哪些產品、運營方案發揮作用,數據的變化可以知道某個方案起了多大的作用。 拿PV來說,分析PV的地域結構,可以知道適合的推廣渠道;分析用戶的年齡結構可以知道活動策劃偏向什麼主題;分析用戶的職業結構可以知道用戶的使用習慣。 3、這些數據為什麼發生了這些變化? 分析數據為什麼變化,可以找到關鍵的原因,或者洞悉用戶真正的需求,最終形成產品的改進。
免費的?建議先輸入數據,然後按照教程練習以後自行分析吧
如果給錢,樓上估計應該會幫你分析的很好。
不過也有可能你人品大爆發,他不收你錢
首先要清楚spss數據分析軟體,對於數據格式的要求。
通常用spss軟體進行數據分析時,數據格式要求是橫向一行為一份問卷,一列對應問卷中的一個題目,所以有多少份問卷,最終錄完後就有多少行,而問卷中有多少個題目,最終就有多少列。
其次在錄的時候 可以在excel中錄,也可以直接在spss中錄入,因為格式是完全一樣的,如果對excel很熟悉,就可以現在excel中錄,錄完再通過spss直接可以打開excel數據就好了。
數據分析是以現有網站的內容為基礎,展示用戶喜歡的內容,降低網站的跳出率增加網站黏性,具體步驟如下:
1、分析pv、uv、ip、跳出率和平均訪問時長
通常情況下uv要大於ip,pv是uv的倍數關系,而pv:uv多少合適呢?要看同行業的平均數據,比如一個知識性網站,pv:uv的比例接近10:1,而如果是企業站,可能3:1或者4:1。
跳出率越高說明網站內容質量越差,平均訪問時長也體現網站的內容質量。時長越長說明網站內容質量越高、內鏈系統越好。
2、分析來源、地域和搜索引擎
從來源分析可以評測外鏈和推廣效果,可以選擇效果更好的推廣和外鏈方式,節省時間。地域分析可以幫我我們做地域關鍵詞,搜索引擎分析用於明白用戶的搜索習慣。
3、受訪頁面、著陸頁和搜索詞
分析受訪頁面可以看出推廣、外鏈以及內鏈效果,分析搜索詞可以得出現在內容排名效果。
受訪頁面主要來自於外鏈、推廣鏈接、排名頁面和內鏈布局。受訪頁面越高的網頁說明展示次數越多,被用戶看到的概率越大。
著陸頁分數據純碎的體現外鏈、推廣鏈接和排名的效果,如果沒有關鍵詞排名,可以直接評測推廣、外鏈的效果。
可以通過搜索詞得知那些關鍵詞給我們帶來了流量,以及訪問的頁面是哪些,訪問頁的跳出率是多少,是不是應該推廣這個頁面幫助它提升排名。
4、分析頁面點擊圖和頁面上下游
頁面點擊圖,可以根據頁面點擊圖調整網站首頁布局。顏色越深的內容放置的位置越靠近左上角,顏色越淺的內容位置越靠近右下角。點擊很少或者沒有點擊的內容可以從首頁移除,或者放置在欄目頁。
頁面上下游是體現用戶瀏覽網頁的軌跡,從上下游的數據可以統計布局的內鏈用戶點擊最多的文章是哪一篇,以及哪些頁面的跳出率高。頁面上下游數據最能說明內鏈布局效果。
注意:數據分析的魅力是常人無法感受的,如果你的網站在中後期還是憑證感覺做,那麼你就相當於盲人摸象,你的網站排名只能看運氣了。
『叄』 數據分析員用python做數據分析是怎麼回事,需要用到python中的那些內容,具體是怎麼操作的
最近,Analysis with Programming加入了Planet Python。我這里來分享一下如何通過Python來開始數據分析。具體內容如下:
數據導入
導入本地的或者web端的CSV文件;
數據變換;
數據統計描述;
假設檢驗
單樣本t檢驗;
可視化;
創建自定義函數。
數據導入
1
這是很關鍵的一步,為了後續的分析我們首先需要導入數據。通常來說,數據是CSV格式,就算不是,至少也可以轉換成CSV格式。在Python中,我們的操作如下:
import pandas as pd
# Reading data locally
df = pd.read_csv('/Users/al-ahmadgaidasaad/Documents/d.csv')
# Reading data from web
data_url = "https://raw.githubusercontent.com/alstat/Analysis-with-Programming/master/2014/Python/Numerical-Descriptions-of-the-Data/data.csv"
df = pd.read_csv(data_url)
為了讀取本地CSV文件,我們需要pandas這個數據分析庫中的相應模塊。其中的read_csv函數能夠讀取本地和web數據。
數據變換
1
既然在工作空間有了數據,接下來就是數據變換。統計學家和科學家們通常會在這一步移除分析中的非必要數據。我們先看看數據(下圖)
對R語言程序員來說,上述操作等價於通過print(head(df))來列印數據的前6行,以及通過print(tail(df))來列印數據的後6行。當然Python中,默認列印是5行,而R則是6行。因此R的代碼head(df, n = 10),在Python中就是df.head(n = 10),列印數據尾部也是同樣道理
9
plt.show(sns.lmplot("Benguet", "Ifugao", df))
創建自定義函數
在Python中,我們使用def函數來實現一個自定義函數。例如,如果我們要定義一個兩數相加的函數,如下即可:
def add_2int(x, y):
return x + y
print add_2int(2, 2)
# OUTPUT
4
順便說一下,Python中的縮進是很重要的。通過縮進來定義函數作用域,就像在R語言中使用大括弧{…}一樣。這有一個我們之前博文的例子:
產生10個正態分布樣本,其中和
基於95%的置信度,計算和;
重復100次; 然後
計算出置信區間包含真實均值的百分比
Python中,程序如下:
import numpy as np
import scipy.stats as ss
def case(n = 10, mu = 3, sigma = np.sqrt(5), p = 0.025, rep = 100):
m = np.zeros((rep, 4))
for i in range(rep):
norm = np.random.normal(loc = mu, scale = sigma, size = n)
xbar = np.mean(norm)
low = xbar - ss.norm.ppf(q = 1 - p) * (sigma / np.sqrt(n))
up = xbar + ss.norm.ppf(q = 1 - p) * (sigma / np.sqrt(n))
if (mu > low) & (mu < up):
rem = 1
else:
rem = 0
m[i, :] = [xbar, low, up, rem]
inside = np.sum(m[:, 3])
per = inside / rep
desc = "There are " + str(inside) + " confidence intervals that contain "
"the true mean (" + str(mu) + "), that is " + str(per) + " percent of the total CIs"
return {"Matrix": m, "Decision": desc}
上述代碼讀起來很簡單,但是循環的時候就很慢了。下面針對上述代碼進行了改進,這多虧了Python專家
import numpy as np
import scipy.stats as ss
def case2(n = 10, mu = 3, sigma = np.sqrt(5), p = 0.025, rep = 100):
scaled_crit = ss.norm.ppf(q = 1 - p) * (sigma / np.sqrt(n))
norm = np.random.normal(loc = mu, scale = sigma, size = (rep, n))
xbar = norm.mean(1)
low = xbar - scaled_crit
up = xbar + scaled_crit
rem = (mu > low) & (mu < up)
m = np.c_[xbar, low, up, rem]
inside = np.sum(m[:, 3])
per = inside / rep
desc = "There are " + str(inside) + " confidence intervals that contain "
"the true mean (" + str(mu) + "), that is " + str(per) + " percent of the total CIs"
return {"Matrix": m, "Decision": desc}
『肆』 如何用python寫 數據分析工具
數據導入
導入本地的或者web端的CSV文件;
數據變換;
數據統計描述;
假設檢驗
單樣本t檢驗;
可視化;
創建自定義函數。
數據導入
這是很關鍵的一步,為了後續的分析我們首先需要導入數據。通常來說,數據是CSV格式,就算不是,至少也可以轉換成CSV格式。在Python中,我們的操作如下:
Python
1
2
3
4
5
6
7
8
import pandas as pd
# Reading data locally
df = pd.read_csv('/Users/al-ahmadgaidasaad/Documents/d.csv')
# Reading data from web
data_url = "t/Analysis-with-Programming/master/2014/Python/Numerical-Descriptions-of-the-Data/data.csv"
df = pd.read_csv(data_url)
為了讀取本地CSV文件,我們需要pandas這個數據分析庫中的相應模塊。其中的read_csv函數能夠讀取本地和web數據。
數據變換
既然在工作空間有了數據,接下來就是數據變換。統計學家和科學家們通常會在這一步移除分析中的非必要數據。我們先看看數據:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# Head of the data
print df.head()
# OUTPUT
0 12432934148330010553
1 41589235 4287806335257
2 17871922 19551074 4544
317152 14501 3536 1960731687
4 12662385 25303315 8520
# Tail of the data
print df.tail()
# OUTPUT
74 2505 20878 3519 1973716513
7560303 40065 7062 1942261808
76 63116756 3561 1591023349
7713345 38902 2583 1109668663
78 2623 18264 3745 1678716900
對R語言程序員來說,上述操作等價於通過print(head(df))來列印數據的前6行,以及通過print(tail(df))來列印數據的後6行。當然Python中,默認列印是5行,而R則是6行。因此R的代碼head(df, n = 10),在Python中就是df.head(n = 10),列印數據尾部也是同樣道理。
在R語言中,數據列和行的名字通過colnames和rownames來分別進行提取。在Python中,我們則使用columns和index屬性來提取,如下:
Python
1
2
3
4
5
6
7
8
9
10
11
# Extracting column names
print df.columns
# OUTPUT
Index([u'Abra', u'Apayao', u'Benguet', u'Ifugao', u'Kalinga'], dtype='object')
# Extracting row names or the index
print df.index
# OUTPUT
Int64Index([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78], dtype='int64')
數據轉置使用T方法,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Transpose data
print df.T
# OUTPUT
01 23 45 67 89
Abra1243 41581787171521266 5576 927215401039 5424
Apayao2934 92351922145012385 7452109917038138210588
Benguet148 42871955 353625307712796 24632592 1064
Ifugao3300
... 69 70 71 72 73 74 75 76 77
Abra ...12763 247059094 620913316 250560303 631113345
Apayao ...376251953235126 6335386132087840065 675638902
Benguet... 2354 4045 5987 3530 2585 3519 7062 3561 2583
Ifugao ... 9838171251894015560 774619737194221591011096
Kalinga...
78
Abra2623
Apayao 18264
Benguet 3745
Ifugao 16787
Kalinga16900
Other transformations such as sort can be done using<code>sort</code>attribute. Now let's extract a specific column. In Python, we do it using either<code>iloc</code>or<code>ix</code>attributes, but<code>ix</code>is more robust and thus I prefer it. Assuming we want the head of the first column of the data, we have
其他變換,例如排序就是用sort屬性。現在我們提取特定的某列數據。Python中,可以使用iloc或者ix屬性。但是我更喜歡用ix,因為它更穩定一些。假設我們需數據第一列的前5行,我們有:
Python
1
2
3
4
5
6
7
8
9
print df.ix[:, 0].head()
# OUTPUT
0 1243
1 4158
2 1787
317152
4 1266
Name: Abra, dtype: int64
順便提一下,Python的索引是從0開始而非1。為了取出從11到20行的前3列數據,我們有:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
print df.ix[10:20, 0:3]
# OUTPUT
AbraApayaoBenguet
109811311 2560
1127366 15093 3039
12 11001701 2382
13 7212 11001 1088
14 10481427 2847
1525679 15661 2942
16 10552191 2119
17 54376461734
18 10291183 2302
1923710 12222 2598
20 10912343 2654
上述命令相當於df.ix[10:20, ['Abra', 'Apayao', 'Benguet']]。
為了舍棄數據中的列,這里是列1(Apayao)和列2(Benguet),我們使用drop屬性,如下:
Python
1
2
3
4
5
6
7
8
9
print df.drop(df.columns[[1, 2]], axis = 1).head()
# OUTPUT
AbraIfugaoKalinga
0 1243330010553
1 4158806335257
2 17871074 4544
317152 1960731687
4 12663315 8520
axis參數告訴函數到底舍棄列還是行。如果axis等於0,那麼就舍棄行。
統計描述
下一步就是通過describe屬性,對數據的統計特性進行描述:
Python
1
2
3
4
5
6
7
8
9
10
11
12
print df.describe()
# OUTPUT
AbraApayaoBenguetIfugao Kalinga
count 79.000000 79.00000079.000000 79.000000 79.000000
mean 12874.37974716860.6455703237.39240512414.62025330446.417722
std16746.46694515448.1537941588.536429 5034.28201922245.707692
min927.000000401.000000 148.000000 1074.000000 2346.000000
25% 1524.000000 3435.5000002328.000000 8205.000000 8601.500000
50% 5790.00000010588.0000003202.00000013044.00000024494.000000
75%13330.50000033289.0000003918.50000016099.50000052510.500000
max60303.00000054625.0000008813.00000021031.00000068663.000000
假設檢驗
Python有一個很好的統計推斷包。那就是scipy裡面的stats。ttest_1samp實現了單樣本t檢驗。因此,如果我們想檢驗數據Abra列的稻穀產量均值,通過零假設,這里我們假定總體稻穀產量均值為15000,我們有:
Python
1
2
3
4
5
6
7
from scipy import stats as ss
# Perform one sample t-test using 1500 as the true mean
print ss.ttest_1samp(a = df.ix[:, 'Abra'], popmean = 15000)
# OUTPUT
(-1.1281738488299586, 0.26270472069109496)
返回下述值組成的元祖:
t : 浮點或數組類型
t統計量
prob : 浮點或數組類型
two-tailed p-value 雙側概率值
通過上面的輸出,看到p值是0.267遠大於α等於0.05,因此沒有充分的證據說平均稻穀產量不是150000。將這個檢驗應用到所有的變數,同樣假設均值為15000,我們有:
Python
1
2
3
4
5
6
print ss.ttest_1samp(a = df, popmean = 15000)
# OUTPUT
(array([ -1.12817385, 1.07053437, -65.81425599,-4.564575, 6.17156198]),
array([2.62704721e-01, 2.87680340e-01, 4.15643528e-70,
1.83764399e-05, 2.82461897e-08]))
第一個數組是t統計量,第二個數組則是相應的p值。
可視化
Python中有許多可視化模塊,最流行的當屬matpalotlib庫。稍加提及,我們也可選擇bokeh和seaborn模塊。之前的博文中,我已經說明了matplotlib庫中的盒須圖模塊功能。
;
重復100次; 然後
計算出置信區間包含真實均值的百分比
Python中,程序如下:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import numpy as np
import scipy.stats as ss
def case(n = 10, mu = 3, sigma = np.sqrt(5), p = 0.025, rep = 100):
m = np.zeros((rep, 4))
for i in range(rep):
norm = np.random.normal(loc = mu, scale = sigma, size = n)
xbar = np.mean(norm)
low = xbar - ss.norm.ppf(q = 1 - p) * (sigma / np.sqrt(n))
up = xbar + ss.norm.ppf(q = 1 - p) * (sigma / np.sqrt(n))
if (mu > low) & (mu < up):
rem = 1
else:
rem = 0
m[i, :] = [xbar, low, up, rem]
inside = np.sum(m[:, 3])
per = inside / rep
desc = "There are " + str(inside) + " confidence intervals that contain "
"the true mean (" + str(mu) + "), that is " + str(per) + " percent of the total CIs"
return {"Matrix": m, "Decision": desc}
上述代碼讀起來很簡單,但是循環的時候就很慢了。下面針對上述代碼進行了改進,這多虧了Python專家,看我上篇博文的15條意見吧。
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import numpy as np
import scipy.stats as ss
def case2(n = 10, mu = 3, sigma = np.sqrt(5), p = 0.025, rep = 100):
scaled_crit = ss.norm.ppf(q = 1 - p) * (sigma / np.sqrt(n))
norm = np.random.normal(loc = mu, scale = sigma, size = (rep, n))
xbar = norm.mean(1)
low = xbar - scaled_crit
up = xbar + scaled_crit
rem = (mu > low) & (mu < up)
m = np.c_[xbar, low, up, rem]
inside = np.sum(m[:, 3])
per = inside / rep
desc = "There are " + str(inside) + " confidence intervals that contain "
"the true mean (" + str(mu) + "), that is " + str(per) + " percent of the total CIs"
return {"Matrix": m, "Decision": desc}
更新
那些對於本文ipython notebook版本感興趣的,請點擊這里。這篇文章由Nuttens Claude負責轉換成ipython notebook 。
『伍』 可以讓你快速用Python進行數據分析的10個小技巧
一些小提示和小技巧可能是非常有用的,特別是在編程領域。有時候使用一點點黑客技術,既可以節省時間,還可能挽救「生命」。
一個小小的快捷方式或附加組件有時真是天賜之物,並且可以成為真正的生產力助推器。所以,這里有一些小提示和小技巧,有些可能是新的,但我相信在下一個數據分析項目中會讓你非常方便。
Pandas中數據框數據的Profiling過程
Profiling(分析器)是一個幫助我們理解數據的過程,而Pandas Profiling是一個Python包,它可以簡單快速地對Pandas 的數據框數據進行 探索 性數據分析。
Pandas中df.describe()和df.info()函數可以實現EDA過程第一步。但是,它們只提供了對數據非常基本的概述,對於大型數據集沒有太大幫助。 而Pandas中的Profiling功能簡單通過一行代碼就能顯示大量信息,且在互動式HTML報告中也是如此。
對於給定的數據集,Pandas中的profiling包計算了以下統計信息:
由Pandas Profiling包計算出的統計信息包括直方圖、眾數、相關系數、分位數、描述統計量、其他信息——類型、單一變數值、缺失值等。
安裝
用pip安裝或者用conda安裝
pip install pandas-profiling
conda install -c anaconda pandas-profiling
用法
下面代碼是用很久以前的泰坦尼克數據集來演示多功能Python分析器的結果。
#importing the necessary packages
import pandas as pd
import pandas_profiling
df = pd.read_csv('titanic/train.csv')
pandas_profiling.ProfileReport(df)
一行代碼就能實現在Jupyter Notebook中顯示完整的數據分析報告,該報告非常詳細,且包含了必要的圖表信息。
還可以使用以下代碼將報告導出到互動式HTML文件中。
profile = pandas_profiling.ProfileReport(df)
profile.to_file(outputfile="Titanic data profiling.html")
Pandas實現互動式作圖
Pandas有一個內置的.plot()函數作為DataFrame類的一部分。但是,使用此功能呈現的可視化不是互動式的,這使得它沒那麼吸引人。同樣,使用pandas.DataFrame.plot()函數繪制圖表也不能實現交互。 如果我們需要在不對代碼進行重大修改的情況下用Pandas繪制互動式圖表怎麼辦呢?這個時候就可以用Cufflinks庫來實現。
Cufflinks庫可以將有強大功能的plotly和擁有靈活性的pandas結合在一起,非常便於繪圖。下面就來看在pandas中如何安裝和使用Cufflinks庫。
安裝
pip install plotly
# Plotly is a pre-requisite before installing cufflinks
pip install cufflinks
用法
#importing Pandas
import pandas as pd
#importing plotly and cufflinks in offline mode
import cufflinks as cf
import plotly.offline
cf.go_offline()
cf.set_config_file(offline=False, world_readable=True)
是時候展示泰坦尼克號數據集的魔力了。
df.iplot()
df.iplot() vs df.plot()
右側的可視化顯示了靜態圖表,而左側圖表是互動式的,更詳細,並且所有這些在語法上都沒有任何重大更改。
Magic命令
Magic命令是Jupyter notebook中的一組便捷功能,旨在解決標准數據分析中的一些常見問題。使用命令%lsmagic可以看到所有的可用命令。
所有可用的Magic命令列表
Magic命令有兩種:行magic命令(line magics),以單個%字元為前綴,在單行輸入操作;單元magic命令(cell magics),以雙%%字元為前綴,可以在多行輸入操作。如果設置為1,則不用鍵入%即可調用Magic函數。
接下來看一些在常見數據分析任務中可能用到的命令:
% pastebin
%pastebin將代碼上傳到Pastebin並返回url。Pastebin是一個在線內容託管服務,可以存儲純文本,如源代碼片段,然後通過url可以與其他人共享。事實上,Github gist也類似於pastebin,只是有版本控制。
在file.py文件中寫一個包含以下內容的python腳本,並試著運行看看結果。
#file.py
def foo(x):
return x
在Jupyter Notebook中使用%pastebin生成一個pastebin url。
%matplotlib notebook
函數用於在Jupyter notebook中呈現靜態matplotlib圖。用notebook替換inline,可以輕松獲得可縮放和可調整大小的繪圖。但記得這個函數要在導入matplotlib庫之前調用。
%run
用%run函數在notebook中運行一個python腳本試試。
%run file.py
%%writefile
%% writefile是將單元格內容寫入文件中。以下代碼將腳本寫入名為foo.py的文件並保存在當前目錄中。
%%latex
%%latex函數將單元格內容以LaTeX形式呈現。此函數對於在單元格中編寫數學公式和方程很有用。
查找並解決錯誤
互動式調試器也是一個神奇的功能,我把它單獨定義了一類。如果在運行代碼單元時出現異常,請在新行中鍵入%debug並運行它。 這將打開一個互動式調試環境,它能直接定位到發生異常的位置。還可以檢查程序中分配的變數值,並在此處執行操作。退出調試器單擊q即可。
Printing也有小技巧
如果您想生成美觀的數據結構,pprint是首選。它在列印字典數據或JSON數據時特別有用。接下來看一個使用print和pprint來顯示輸出的示例。
讓你的筆記脫穎而出
我們可以在您的Jupyter notebook中使用警示框/注釋框來突出顯示重要內容或其他需要突出的內容。注釋的顏色取決於指定的警報類型。只需在需要突出顯示的單元格中添加以下任一代碼或所有代碼即可。
藍色警示框:信息提示
<p class="alert alert-block alert-info">
<b>Tip:</b> Use blue boxes (alert-info) for tips and notes.
If it』s a note, you don』t have to include the word 「Note」.
</p>
黃色警示框:警告
<p class="alert alert-block alert-warning">
<b>Example:</b> Yellow Boxes are generally used to include additional examples or mathematical formulas.
</p>
綠色警示框:成功
<p class="alert alert-block alert-success">
Use green box only when necessary like to display links to related content.
</p>
紅色警示框:高危
<p class="alert alert-block alert-danger">
It is good to avoid red boxes but can be used to alert users to not delete some important part of code etc.
</p>
列印單元格所有代碼的輸出結果
假如有一個Jupyter Notebook的單元格,其中包含以下代碼行:
In [1]: 10+5
11+6
Out [1]: 17
單元格的正常屬性是只列印最後一個輸出,而對於其他輸出,我們需要添加print()函數。然而通過在notebook頂部添加以下代碼段可以一次列印所有輸出。
添加代碼後所有的輸出結果就會一個接一個地列印出來。
In [1]: 10+5
11+6
12+7
Out [1]: 15
Out [1]: 17
Out [1]: 19
恢復原始設置:
InteractiveShell.ast_node_interactivity = "last_expr"
使用'i'選項運行python腳本
從命令行運行python腳本的典型方法是:python hello.py。但是,如果在運行相同的腳本時添加-i,例如python -i hello.py,就能提供更多優勢。接下來看看結果如何。
首先,即使程序結束,python也不會退出解釋器。因此,我們可以檢查變數的值和程序中定義的函數的正確性。
其次,我們可以輕松地調用python調試器,因為我們仍然在解釋器中:
import pdb
pdb.pm()
這能定位異常發生的位置,然後我們可以處理異常代碼。
自動評論代碼
Ctrl / Cmd + /自動注釋單元格中的選定行,再次命中組合將取消注釋相同的代碼行。
刪除容易恢復難
你有沒有意外刪除過Jupyter notebook中的單元格?如果答案是肯定的,那麼可以掌握這個撤消刪除操作的快捷方式。
如果您刪除了單元格的內容,可以通過按CTRL / CMD + Z輕松恢復它。
如果需要恢復整個已刪除的單元格,請按ESC + Z或EDIT>撤消刪除單元格。
結論
在本文中,我列出了使用Python和Jupyter notebook時收集的一些小提示。我相信它們會對你有用,能讓你有所收獲,從而實現輕松編碼!