当前位置: 首页 > news >正文

wordpress 文章标题重庆网站关键词优化推广

wordpress 文章标题,重庆网站关键词优化推广,广州的百度推广公司,一站式建设文章目录 Pandas 变量类型的转换查看各列数据类型改变数据类型 重置索引删除行索引和切片seriesDataFrame取列按行列索引选择loc与iloc获取 isin()选择query()的使用排序用索引排序使用变量值排序 修改替换变量值对应数值的替换 数据分组基于拆分进行筛选 分组汇总引用自定义函… 文章目录 Pandas 变量类型的转换查看各列数据类型改变数据类型 重置索引删除行索引和切片seriesDataFrame取列按行列索引选择loc与iloc获取 isin()选择query()的使用排序用索引排序使用变量值排序 修改替换变量值对应数值的替换 数据分组基于拆分进行筛选 分组汇总引用自定义函数 处理缺失值认识缺失值缺失值查看获取所有缺失值填充缺失值 数据查重标识出重复的行直接删除重复的行 总结 Pandas Pandas 是 Python 中一个非常强大的数据处理库它提供了快速、灵活和表达式丰富的数据结构旨在使“关系”或“标签”数据的处理工作变得既简单又直观。Pandas 非常适合于数据清洗和准备阶段以便进行进一步的分析和建模。 这篇我们接着来介绍Pandas方法 变量类型的转换 Pandas支持的数据类型 float、int、string、bool、datetime64[nsr]、datetime64[nsr,tz]、timedelta[ns]、category以及object。 查看各列数据类型 #查看各列数据类型book_df.dtypes ---------------------- ID int64 name object age int64 gender object clazz object dtype: object改变数据类型 格式 df.astype(dtype :指定希望转换的数据类型可以使用 numpy 或者 python 中的数据类型 int/float/bool/strcopy True :是否生成新的副本而不是替换原数据框errors raise : 转换出错时是否抛出错误raise/ ignore )# 改变数据类型book_df[age].astype(float) ---------------------------------- 0 22.0 1 24.0 2 22.0 3 24.0 4 22.0... 995 24.0 996 21.0 997 22.0 998 23.0 999 23.0 Name: age, Length: 1000, dtype: float64重置索引 #重置索引---------reset_indexa_pd pd.DataFrame(np.random.randint(0,10,(3,2)),columnslist(ab),indexlist(efg)) a_pd.reset_index(dropTrue) #索引从0开始重置 --------------a b 0 2 3 1 4 0 2 1 9删除行 # 删除行new_a_pd.drop(1,inplaceTrue) #删除第一行 new_a_pd ---------------a b 0 5 3 2 6 0索引和切片 series 索引 datapd.Series([4,3,25,2,3],indexlist(abcde)) data -------- a 4 b 3 c 25 d 2 e 3 dtype: int64data[a] #根据key获取 ------------------- 4data[1] #索引获取 -------------- 3data[-1] ---------------- 3切片 #切片 data[a:d] --------------- a 4 b 3 c 25 d 2 dtype: int64data[2:4] #索引切片 --------------------- c 25 d 2 dtype: int64data[-3:-1] ---------------------- c 25 d 2 dtype: int64data[data3] #获取满足条件的所有行 -------------------- a 4 c 25 dtype: int64如果索引与行名相同都是1这时候就不知道是按照哪个来获取所以获取时候使用loc、iloc: loc函数通过行索引 “Index” 中的具体值来取行数据及根据普通索引获取。 iloc函数通过行号来取行数据及根据位置索引获取。 datapd.Series([5,3,2,5,9],index[1,2,3,4,5])data.loc[1] #输入名称 ---------------- 5data.iloc[1] #输入位置 ------------- 3DataFrame 取列 当想要获取 df 中某列数据时只需要在 df 后面的方括号中指明要选择的列即可。如果是一列则只需要传入一个列名;如果是同时选择多列则传入多个列名即可注意多个列名 用一个 list 存放。 #获取一列 df[col] #获取多列 df[[col1 , col2]] #输入列名除了传入具体的列名我们可以传入具体列的位置即第几行对数据进行选取通过传入位置来获取数据时需要用到 iloc 方法。 df.iloc[行位置,[0,2]]按行列索引选择 DataFrame对象按照行列检索获取可以使用loc和iloc函数方括号中逗号之前的部分表示要获取的行的索引如果输入一个冒号或不输入任何数值表示获取所有的行或列逗号之后方括号表示要获取的列的索引。 1 df.loc[普通行索引,普通列索引] 2 df.iloc[位置行索引,位置列索引]loc与iloc获取 import numpy as np import pandas as pddatapd.DataFrame(np.arange(12).reshape(3,4), indexlist(abc),columnslist(ABCD))#获取行为b的行 data.loc[b]#使用iloc获取行为b的行行号为1 data.iloc[1]isin()选择 df.isin(values) 返回结果为相应的位置是否匹配给出的 values values 为序列对应每个具体值 values 为字典对应各个变量名称 values 为数据框同时对应数值和变量名称 1 df.col.isin([1,3,5]) 2 df[ df.col.isin([1,3,5])] 3 df[ df.col.isin([val1,val2])] 4 df[ df.index.isin([val1,val2])]query()的使用 使用boolean值表达式进行筛选 df.query( expr语句表达式 inplaceFalse;是否直接替换原数据框 ) 可以使用前缀“”引用环境变量等号为而不是。 df.query(col10 and col90 and col1val)limit 5 df.query(collimit colval) df.query(collimit col!val)排序 用索引排序 df.sort_index level :多重索引时指定用于排序的级别顺序号/名称18 ascending True :是否为升序排列多列时以表形式提供 inplace False : na_position last‘ :缺失值的排列顺序 ( first/last) df pd.read_excelstu_data.xlsx,index_col[学号”,”性别”] df.set_index( [学号,性别], inplace True )# 通过索引进行排序 df.sort_index() df.sort_index(ascendingFalse) df.sort_index(ascending [True,False])#设置哪个索引进行排序 df.sort_index(level支出) df.sort_index(level [支出,体重])使用变量值排序 df.sort_values by :指定用于排序的变量名多列时以列表形式提供 ascending True :是否为升序排列 inplace False : na_position last‘ :缺失值的排列顺序( first/last) # 根据值进行排序 df.sort_values(by身高)修改替换变量值 本质上是如何直接指定单元格的问题只要能准确定位单元地址就能够做到准确替换。 # 判断哪一行是我们要的数据 df.体重[1] 78 df[体重][1] 68 df.loc[1,体重] 78 df.开设.isin([不清楚]) df.开设[df.开设.isin([不清楚])] 可以对应数值的替换 df.replace( to_replace None :将被替换的原数值所有严格匹配的数值将被用 value 替换可以 str/regex/list/dict/Series/numeric/None value None :希望填充的新数值 inplace False ) df.开设.replace(可以,不清楚,inplace True)df.性别.replace([女,男],[0,1],inplace True)df.性别.replace({0:女,1:男},inplace True)数据分组 df.groupby( by :用于分组的变量名/函数 level None :相应的轴存在多重索引时指定用于分组的级别 as_index True :在结果中将组标签作为索引 sort True :结果是否按照分组关键字逬行排序 )#生成的是分组索引标记而不是新的 df dfg df.groupby (开设)#查看dfg里面的数据 dfg.groups#查看具体描述 dfg.describe( )#按多列分组 dfg2 df.groupby([性别,开设])dfg2.mean ()基于拆分进行筛选 筛选出其中一组 dfgroup.get_group() dfg.get_group (不必要).mean () dfg.get_group (不必要).std ()筛选出所需的列 该操作也适用于希望对不同的变量列进行不同操作时 dfg[身高].max()分组汇总 在使用 groupby 完成数据分组后就可以按照需求进行分组信息汇总此时可以使用其它专门的汇总命令如 agg 来完成汇总操作。 使用 agg 函数进行汇总 df.aggregate( )名称可以直接简写为 agg可以用 axis 指定汇总维度可以直接使用的汇总函数。 dfg.agg( count)dfg.agg(median)dfg.agg([mean, median])dfg.agg([mean, median])#引用非内置函数 import numpy as np df2.身高.agg (np. sum)dfg.身高.agg (np. sum)引用自定义函数 def mynum(x:int) -int:return x.min()df2.身高.agg (mymean) dfg.agg(mymean)处理缺失值 认识缺失值 系统默认的缺失值 None 和 np. nan。 datapd.Series([3,4,np.nan,1,5,None]) dfpd.DataFrame([[1,2,None],[4,np.nan,6],[5,6,7]])缺失值查看 直接调用info()方法就会返回每一列的缺失情况。 dfpd.DataFrame([[1,2,np.nan],[4,np.nan,6],[5,6,7]]) df.info()获取所有缺失值 Pandas中缺失值用NaN表示从用info()方法的结果来看索引1这一列是1 2 non-null float64表示这一列有2个非空值而应该是3个非空值说明这一列有1个空值。还可以用isnull()方法来判断哪个值是缺失值如果是缺失值则返回True如果不是缺失值返回False。df.isna(): 检查相应的数据是否为缺失值同 df.isnull(). df.notna()等同于notnull() datapd.Series([3,4,np.nan,1,5,None])print(isnull()方法判断是否是缺值)print(data.isnull()) print(data.isna()) print(获取缺值) print(data[data.isnull()]) print(获取非空值) print(data[data.notnull()])填充缺失值 调用fillna()方法对数据表中的所有缺失值进行填充在fillna()方法中输入要填充的值。还可以通过method参数使用前一个数和后一个数来进行填充。 df.fillna(value :用于填充缺失值的数值也可以提供dict/Series/DataFrame 以进—步指明哪些索引/列会被替换不能使用 listmethod None :有索引时具体的填充方法向前填充向后填充等limit None :指定了 method 后设定具体的最大填充步长此步长不能填充axis : index (0), columns (1)inplace False )Series对象缺失值填充: datapd.Series([3,4,np.nan,1,5,None])print(以0进行填充:) print(data.fillna(0)) print(以前一个数进行填充:) print(data.fillna(methodffill)) print(以后一个数进行填充:) print(data.fillna(methodbfill)) print(先按前一个再按后一个) print(data.fillna(methodbfill).fillna(meth odffill))DataFrame对象缺失值填充: dfpd.DataFrame([[1,2,np.nan],[4,np.nan,6],[5,6,7]])print(使用数值0来填充) print(df.fillna(0)) print(使用行的前一个数来填充) print(df.fillna(methodffill)) print(使用列的后一个数来填充) print(df.fillna(methodbfill ,axis1))列的平均值来填充: dfpd.DataFrame([[1,2,np.nan],[4,np.nan,6],[5,6,7]])for i in df.columns:df[i]df[i].fillna(np.nanmean(df[i])) df数据查重 标识出重复的行 标识出重复行的意义在于进一步检査重复原因以便将可能的错误数据加以修改: df[dup ] df.duplicated( [课程,开设])利用索引进行重复行标识df.index.duplicated() df2 df.set_index ( [课程,开设] ) df2.index.duplicated ()直接删除重复的行 drop_duplicates (subset“ ”按照指定的行逬行去重keepfirst 、 last 、 False 是否直接删除有重复的所有记录)df. drop_duplicates ( [课程, 开设 ] ) df. drop_duplicates ( [课程, 开设 ] , keep False )利用査重标识结果直接删除: #df[~df.duplicated( )]df[~df . duplicated ( [课程, 开设 ] )]总结 本篇介绍了pandas中常用的一些数据处理方法结合上一篇常用方法就介绍完了哦务必好好整理
http://www.dnsts.com.cn/news/97449.html

相关文章:

  • 网站首页浮动窗口代码注册公司需要什么流程
  • 成都行业网站设计ui设计需要学编程吗
  • 全自动建站系统dw做网站视频教程
  • wordpress连载插件济南优化网站
  • 信息科技公司网站怎么做怀远网站建设
  • 河北省建设局网站类似直播平台网站的建设费用
  • 用阿里云服务器做刷单网站重庆百度推广关键词优化
  • 昆山网站建设怎么样站群搭建
  • 帝国cms建站教程编辑网站绑定 主机名
  • 深圳网站建设 百业中核哪个公司待遇最好
  • 优质的seo网站排名优化软件动效网站怎么做
  • 网站优化建设方案衡阳网站建设公司哪家好
  • 美橙互联建站网站被截止松江新城建设发展有限公司网站
  • 公司网站开发与维护做网站基本费用大概需要多少
  • 福州网站建设外包网站开发前端的工作内容是什么
  • ps建设此网站的必要与可行性如何做公司网页制作
  • 合肥网站建设推广湛江网站建设模板定位工厂
  • 网站返利二维码怎么做云南seo公司
  • 河北网站开发费用中国纪检监察
  • 昆山网站开发的公司pos网站源码
  • 如何提高网站知名度wordpress极速主题
  • 万网网站建设步骤做高仿表网站容易被k吗
  • 项目建设情况谷歌seo优化
  • 沈阳网站建设三好街百度seo哪家公司好
  • 北京网站排名优化软件无锡装修公司哪家口碑最好
  • 网站类别页面怎么做wordpress woo theme
  • 西部数码网站助手视频在线制作网站
  • 西安公司的网站建设怎么提高网站的流量
  • 做网站销售水果建设个人网站
  • 怎么做一淘宝客网站代理公司代理注册流程