1、從csv讀取數據,生成DataFrame
import pandas as pd from pandas import Series import numpy as np #從csv文件中讀取數據,生成DataFrame fandango = pd.read_csv('G:\\python\\庫應用(4個)\\3-可視化庫matpltlib\\fandango_scores.csv') type(fandango) # pandas.core.frame.DataFrame
2、set_index() 使用現有列設置DataFrame索引
# set_index() 使用現有列設置DataFrame索引。 # drop: 刪除要用作新索引的列。 fandango_films = fandango.set_index('FILM', drop=True) #help(fandango.set_index) fandango_films.head(3)
3、DataFrame篩選行:指定row行元素名列表
# DataFrame使用括號符號[:]或loc[:]進行行區間切片 fandango_films["Avengers: Age of Ultron (2015)":"Hot Tub Time Machine 2 (2015)"] fandango_films.loc["Avengers: Age of Ultron (2015)":"Hot Tub Time Machine 2 (2015)"] # 指定row行元素 : loc[] fandango_films.loc['Kumiko, The Treasure Hunter (2015)'] # DataFrame篩選行:指定row行元素名列表 fandango_films.loc[['Kumiko, The Treasure Hunter (2015)', 'Do You Believe? (2015)', 'Ant-Man (2015)']]
4、DataFrame篩選列:指定2個列數據: 'RT_user_norm', 'Metacritic_user_nom'
# DataFrame篩選列:指定2個列數據: 'RT_user_norm', 'Metacritic_user_nom' fandango_films[['RT_user_norm', 'Metacritic_user_nom']]
5、查看每個columns的數據類型
# 查看每個columns的數據類型 types = fandango_films.dtypes
6、數據類型為float64的所有columns名字
# 數據類型為float64的所有columns名字 float_columns = types[types.values == 'float64'].index
7、篩選出float類型的所有列,生成一個新DataFrame
# 篩選出float類型的所有列,生成一個新DataFrame float_df = fandango_films[float_columns]
8、np.std() 計算標准偏差
# np.std() 計算標准偏差。 #help(np.std) # x是一列的Series對象 float_df.apply(lambda x: np.std(x))
9、按行求標准差:求每部電影'RT_user_norm', 'Metacritic_user_nom'的標准差
# 按行求標准差:求每部電影'RT_user_norm', 'Metacritic_user_nom'的標准差 # # 取出'RT_user_norm', 'Metacritic_user_nom'的數據 rt_mt_user = float_df[['RT_user_norm', 'Metacritic_user_nom']] # axis=1 按行執行np.std()標准差 rt_mt_user.apply(lambda x: np.std(x), axis=1)