1. 程式人生 > >Python資料分析幾個比較常用的方法

Python資料分析幾個比較常用的方法

轉載自:http://blog.sina.com.cn/s/blog_49f78a4b0102vs9m.html

1,表頭或是excel的索引如果是中文的話,輸出會出錯

​解決方法:python的版本問題!換成python3就自動解決了!當然也有其他的方法,這裡就不再深究

2,如果有很多列,如何輸出指定的列?

需求情況:有的時候,資料很多,但是隻要僅僅對部分列的資料進行分析的話,要怎麼做?

解決方法

df = pandas.read_excel('1.xls',sheetname= '店鋪分析日報')

df = df.loc[:,['關鍵詞','帶來的訪客數','跳失率']] #訪問指定的列

一行讀取資料,第二行訪問指定列

3,如何為資料框新增新的列?

需求情況:有一個表格,裡面的列是單價,數量,想再輸出一個總價的列,或是對一些資料進行總結

解決方法:直接上程式碼

from pandas import read_csv;

import pandas;

df = read_csv("1.csv", sep="|");

#把計算結果新增為一個新的列

df['result'] = df.price*df.num     #新的列名,後面是對應的數值

print (df)

4,如何對百分號的數值進行計算,再將其輸出

需求情況:比較蛋疼的一個情況,電商很多資料都是百分比的,帶有百分號,不能進行直接的計算,需要對其進行轉換,然後再輸出

解決方法:

from pandas import read_csv;

import pandas;

df = read_csv("1.csv", sep="|");

f = df['跳失率'].str.strip("%").astype(float)/100;

f.round(decimals=2)  #保留小數點後面2位

f_str = f.apply(lambda x: format(x, '.2%'));  #再轉換成百分號並且保留2位數(精度可以調整)

df['跳失率']​ = f_str     #重新賦值

5,​如何獲取匯入的資料有幾行和幾列(數值)

需求情況:有的時候需要寫一個通用指令碼,比如隨機抽樣分析,程式自動獲取行和列的話,寫出來的指令碼通用性明顯會很強

解決方法:

df.columns.size   #獲取列數

df.iloc[:, 0].size  #獲取行數

6,​如何對資料進行排序

需求情況:這個就不用說了,到處都要用到​

解決方法:

df['跳失率'].size   #對資料進行排序

newDF = df.sort(['曝光量', '帶來的訪客數'], ascending=[True, False]);  #多重排序

7,如何刪除指定的列?

需求情況:同樣,十幾列的資料,如果你想獲取指定的輸出資料,可以用方法2,但是如果想要獲取的資料列比較多,只有1-2行不想要,這樣就可以用指定刪除列的方法了

解決方法:

df.columns.delete(1)​

一行程式碼搞定!​

總結:整體來說的,python的語法在做資料分析還是相當簡單的,很多的需求基本上就是一行程式碼搞定!

8,如何新增整行資料?

df.append([1,2,34,,5])