python——pandas(2)

import pandas as pd
import numpy as np
food_info=pd.read_csv("food_info.csv")


food_info.sort_values("Sodium_(mg)",inplace=True)        #对列升序排列,inplace用来新生成列表
print(food_info["Sodium_(mg)"])




food_info.sort_values("Sodium_(mg)",inplace=True,ascending=False)   #降序排列
print(food_info["Sodium_(mg)"])


titanic_survival=pd.read_csv("titanic_train.csv")
titanic_survival.head()


age=titanic_survival["Age"]
age_is_null=pd.isnull(age)              #新建列表,列表的值FALSE和TRUE指出是否缺失
age_null_true=age[age_is_null]          #保留缺失值
age_null_count=len(age_null_true)
print(age_null_count)                   #打印出缺失的个数


mean_age=sum(titanic_survival["Age"])/len(titanic_survival["Age"])
print(mean_age)




 #去除缺失值求均值
good_ages=titanic_survival["Age"][age_is_null==False]
print(good_ages)
correct_mean_age=sum(good_ages)/len(good_ages)
print(correct_mean_age)


#算三个等级舱船票价格平均值
passenger_classes=[1,2,3]
fares_by_class={}
for this_class in passenger_classes:
    pclass_rows=titanic_survival[titanic_survival["Pclass"]==this_class]
    pclass_fares=pclass_rows["Fare"]
    fare_for_class=pclass_fares.mean()
    fares_by_class[this_class]=fare_for_class
print(fare_for_class)






#index是类别分类标准,values是标签分类标准,aggfunc=np.mean是具体怎么操作
passenger_survival=titanic_survival.pivot_table(index="Pclass",values="Survived",aggfunc=np.mean)
print(passenger_survival)




passenger_age=titanic_survival.pivot_table(index="Pclass",values="Age")
print(passenger_age)                #aggfunc不指定默认求均值




#观察登陆点与收入和获救情况sum的关系
passenger_stats=titanic_survival.pivot_table(index="Embarked",values=["Fare","Survived"],aggfunc=np.sum)
print(passenger_stats)


#丢去缺失值,如果age sex有缺失就直接舍掉这两列
drop_na_columns=titanic_survival.dropna(axis=1)
new_titanic_survival=titanic_survival.dropna(axis=0,subset=["Age","Sex"])
print(new_titanic_survival)




#定位到一个具体值
row_index_83_age=titanic_survival.loc[83,"Age"]
row_index_1000_pclass=titanic_survival.loc[766,"Pclass"]
print(row_index_83_age)
print(row_index_1000_pclass)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值