利用Python進行基本的資料分析

2021-09-26 05:57:42 字數 3672 閱讀 8311

##採用open函式讀取csv檔案,但此種方法侷限性很多

#with

open

("c:/users/desktop/test_file.csv"

,"r"

)as file:

#for line in file:

#print

(line)

###採用open函式讀取xlsx檔案,侷限性多

import xlrd

#file = xlrd.

open_workbook

("c:/users/desktop/test_file.xlsx"

)#table = file.

sheet_by_index(0

) ##按照索引讀取列表

#for i in

range

(table.nrows)

: ##讀取每行並列印

#print

(table.

row_values

(i))

###import pandas as pd

df = pd.

read_csv

("c:/users/desktop/test_file.csv"

,header=0)

print

(df.

head()

)data = pd.

read_excel

("c:/users/desktop/test_file.xlsx"

,sheet_name=

'test_file'

)print

(data.

head(10

)) ## 檢視前10行

print

(data.

tail()

) ## 檢視後5行

print

(data.

describe()

) ## 基本統計描述,如均值、方差、四分位數等等

print

(data.

count()

) ## 各類指標計數

###判斷是否有缺失值

print

(data.

isnull()

)print

(data.

notnull()

)####刪除含有缺失值的列和行,

0為行,1為列

data.

dropna

(axis=0)

data.

dropna

(axis=1)

###dim是返回資料框的維度,是乙個值

print

(data.ndim)

####shape返回資料框的行列數,0為行,1為列;len作用同shape[0]

print

(data.shape[1]

, data.shape[0]

,len

(data)

)########填補缺失值

df.fillna

(method=

'pad'

) ##前向填補

df.fillna

(method =

'bfill'

) ##後向填補

df.interpolate

(method =

'linear'

) ##插值填補,預設為線性填補

###interpolate

()方法還有 linear, time, index, values, nearest, zero, slinear,

###quadratic, cubic, barycentric, krogh, polynomial, spline, piecewise_polynomial,

# from_derivatives, pchip, akima 等插值方法可供選擇。

##如果你的資料增長速率越來越快,可以選擇 method=

'quadratic' 二次插值。

##如果資料集呈現出累計分布的樣子,推薦選擇 method=

'pchip'。

##如果需要填補預設值,以平滑繪圖為目標,推薦選擇 method=

'akima'。

##method=

'akima',method=

'barycentric' 和 method=

'pchip' 需要 scipy 才能使用。

demo = pd.

read_csv

('c:/users/desktop/one_hot_demo.csv'

, header=0)

print

(demo.

head()

)print

(demo.shape[0]

, demo.shape[1]

, demo.dtypes) ##dtypes用於顯示資料框中各變數的資料型別

###將名義變數轉變為二維啞變數,即獨熱編碼

onehot = pd.

get_dummies

(demo[

['status'

,'color']]

)print

(onehot)

###重複值處理

pd.dataframe.

duplicated

(demo)

.head(10

) ##檢視重複的行

pd.dataframe.

drop_duplicates

(demo) ##去除重複行

###異常值觀測和處理

from matplotlib import pyplot as plt

data1 = pd.

read_csv

('c:/users/desktop/test_file.csv'

,header=0)

print

(data1.

head(5

))total_population = data[

"total population"

]p = plt.

boxplot

(total_population)

##data1.

boxplot()

plt.

show

() ##異常值觀測

outlier = p[

'fliers'][

0].get_ydata

() ##獲取異常值資料,fliers為異常值的標籤

print

(outlier)

## 資料庫讀取

## sudo apt-

get install python-dev libmysqlclient-dev

## sudo apt-

get install python3-mysqldb

利用python進行資料分析

目錄 10 minutes to pandas 翻譯 pandas中loc iloc ix的區別 pandas dropna函式 pandas中dataframe的stack unstack 和pivot 方法的對比 pandas中關於set index和reset index的用法 python匿...

利用python進行資料分析

利用python進行資料分析,需要了解一些基本的方法,比如掌握回歸分析的方法,通過線性回歸和邏輯回歸,其實你就可以對大多數的資料進行回歸分析,並得出相對精確地結論。這部分需要掌握的知識點如下 回歸分析 線性回歸 邏輯回歸 基本的分類演算法 決策樹 隨機森林 樸素貝葉斯 基本的聚類演算法 k mean...

利用R語言進行基本資料管理

建立leadership資料框 manager c 1,2,3,4,5 date c 10 24 08 10 28 08 10 1 08 10 12 08 5 1 09 country c us us uk uk uk gender c m f f m f age c 32,45,25,39,99 ...