ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

去哪儿网数据预处理与分析

2022-01-05 21:05:11  阅读:201  来源: 互联网

标签:分析 loc 哪儿 isnull 星级 data1 预处理 data3 data2


import numpy as np
import pandas as pd

df=pd.read_csv('C:/Users/15451/data/qunar_freetrip.csv',encoding='gbk',sep='\t')
df.head()

df.describe()

df.info()

df.columns 

data=df.rename(columns=lambda x: x.strip())
data.head(2)

data.columns

data1=data[['出发地', '目的地', '价格', '节省', '路线名', '酒店']]
data1.head(2)

data1.isnull().sum()

data1.shape

data1[data1['出发地'].isnull()]

type(data1.路线名)

data1.路线名.str.slice(0,2)

data1.loc[data1['出发地'].isnull(),'路线名'].str.slice(0,2).values

data1.loc[data1['出发地'].isnull(),'出发地']

data1.loc[data1['出发地'].isnull(),'出发地']=data1.loc[data1['出发地'].isnull(),'路线名'].str.slice(0,2).values

data1.iloc[[1864,1930]]

data1.isnull().sum()

data1[data1['目的地'].isnull()]

data1.loc[data1['目的地'].isnull(),'目的地']=data1.loc[data1['目的地'].isnull(),'路线名'].str.slice(3,5).values

data1.iloc[1875]

data1.isnull().sum()

data2=data1.dropna()
data2

data2.isnull().sum()

data2.duplicated().sum()

data2=data2.drop_duplicates()
data2

data2.duplicated().sum()

data2.价格.describe()

data2[data2.价格>3000]

standard=(data2.价格-data2.价格.mean())/data2.价格.std()
data2[standard.abs()>3]

data3=data2.drop(data2[standard.abs()>3].index,axis=0)
data3

data3.info()

data3[['酒店名','类型','星级']]=data3.酒店.str.split(' ',2,True)

data3.head(2)

data3['星级']=data3.星级.str.slice(0,3).astype(np.float32)

data3.info()

data3.to_csv('data/1.csv',encoding='gbk',sep=',')

data3.价格.describe()

bins=[0,500,1000,2000,3000,4000,5000,6000,7000]
pd.cut(data3.价格,bins).value_counts()

pd.cut(data3.价格,bins).value_counts().plot.bar(rot=20)

dataCD=data3[data3.出发地=='成都']
dataCD

pd.cut(dataCD.价格,bins).value_counts().plot.bar(rot=20)

data3[data3['星级'].isnull()]              

data3.loc[data3['星级'].isnull(),'类型'].str.slice(0,3).values

data3.loc[data3['星级'].isnull(),'星级']=data3.loc[data3['星级'].isnull(),'类型'].str.slice(0,3).values
data3

data3.to_csv('data/2.csv',encoding='gbk',sep=',')

data3.星级.isnull().sum()

data3.星级

data3.info()

data3.星级.describe()

data3['星级']=data3.星级.str.slice(0,3).astype(np.float32)

data3.info()

bins=[0,1,2,3,4,5]
pd.cut(data3.星级,bins).value_counts()

pd.cut(data3.星级,bins).value_counts().plot.bar(rot=20)

标签:分析,loc,哪儿,isnull,星级,data1,预处理,data3,data2
来源: https://blog.csdn.net/m0_66151160/article/details/122331693

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有