DataFrame详解-pandas

 

 

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)

 

上一篇:E. Blood Cousins Return (树上启发式合并维护set)


下一篇:计蒜客 青云的机房组网方案