##採用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 ...