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

网站开发费用一般为多少钱怎么用lofter做网站

网站开发费用一般为多少钱,怎么用lofter做网站,百度排行榜前十名,专业网站建设渠道系列文章目录 一、 读写文件数据 二、df查询数据操作 三、df增加列操作 四、df删除行列操作 五、df数据去重操作 六、df数据修改操作 提示#xff1a;写完文章后#xff0c;目录可以自动生成#xff0c;如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、 读写文…系列文章目录 一、 读写文件数据 二、df查询数据操作 三、df增加列操作 四、df删除行列操作 五、df数据去重操作 六、df数据修改操作 提示写完文章后目录可以自动生成如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、 读写文件数据1.1 读写excel文件1.2 读写csv文件1.3 读写mysql数据库 二、df查询数据操作2.1 查询df子集基本方法2.2 loc/iloc获取子集2.2.1 loc/iloc基本介绍2.2.2 loc属性获取子集2.2.3 iloc属性获取子集 2.3 query函数获取子集2.4 isin函数获取子集 三、df增加列操作四、df删除行列操作五、df数据去重操作六、df数据修改操作6.1 直接修改数据6.2 replace函数修改6.3 s对象通过apply函数执行自定义函数6.4 df对象通过apply函数执行自定义函数6.5 df对象通过applymap函数执行自定义函数 前言 本文主要详解了Pandas_DataFrame的读写。 提示以下是本篇文章正文内容下面案例可供参考 一、 读写文件数据 可以参考pandas的官网文档 https://pandas.pydata.org/ 1.1 读写excel文件 数据保存到excel文件 # 导入模块 import pandas as pd # 构造数据集 data [[1,张三, 1990-10-02, 34],[2, 李四, 2000-03-03, 24],[3, 王五, 2005-12-23, 19],[4, 隔壁老王, 1982-11-12,42]] df pd.DataFrame(datadata, columns[id, name, birthday, age]) df # 存储路径 # sheet名称 # 是否存储行索引作为一列 # 是否存储列名 df.to_excel(./output/student.xls, sheet_namestudent,indexTrue, headerTrue)读取excel文件数据 df_excel pd.read_excel(output/student.xls) df_excel # 通过index_col指定某列的值作为行索引, 可以写列名或列下标值 # pd.read_excel(output/student.xls,index_colid) pd.read_excel(output/student.xls,index_col0)1.2 读写csv文件 数据保存到csv(逗号,分隔符)/tsv(制表符\t分隔符)文件中 # 参数1:存储路径 # index:是否存储行索引值 # mode:存储的方式 df.to_csv(output/student.csv, indexFalse, modew) # 存储到tsv文件中 \t # sep:指定列值之间的分隔符 df.to_csv(output/student.tsv, sep\t)读取csv/tsv文件数据 df_csv pd.read_csv(output/student.csv) df_csv # parse_dates: 将指定的列转换成日期时间类型, 可以传入列名或列下标值 # temp_df pd.read_csv(output/student.csv, parse_dates[birthday]) # temp_df pd.read_csv(output/student.csv, parse_dates[2]) # parse_dates: 可以传入True或False, 将行索引值转换成日期时间类型, 需要和行索引值进行结合使用 temp_df pd.read_csv(output/student.csv,index_colbirthday ,parse_datesTrue) temp_df.info() # 读取tsv文件数据 pd.read_csv(output/student.tsv, sep\t, index_col0)1.3 读写mysql数据库 保存数据到mysql数据库 from sqlalchemy import create_engine # 创建数据库链接对象 engine create_engine(mysqlpymysql://root:123456192.168.88.100:3306/BI_db) # name:表名, 表不存在会自动创建 # con:数据库链接对象 # index:是否存储行索引 # if_exists:存储方式, append:追加写 replace:覆盖写 df.to_sql(namestudent, conengine, indexFalse, if_existsappend)读取mysql数据库数据 # sql:可以读取表名, 也可以读取sql语句 # columns: 指定读取表中的字段 df_mysql pd.read_sql(sqlstudent, conengine, columns[name, birthday]) df_mysql # 读取sql语句 pd.read_sql(sqlselect * from student limit 2, conengine) # 只能读取sql语句 pd.read_sql_query(sqlselect * from student limit 2;,conengine) # 只能读取表名 pd.read_sql_table(table_namestudent, conengine)二、df查询数据操作 2.1 查询df子集基本方法 head()tail() import pandas as pd # 加载数据集, 链家租房数据集 df pd.read_csv(data/LJdata.csv) df df.head() df.tail() df.head(n8)获取一列或多列数据 # df[列名]或df.列名 # 获取一列数据, 返回s对象 df[价格] type(df[价格]) df.价格 # 获取一列数据, 返回df对象 df[[价格]] # 获取多列数据 df[[列名1, 列名2, ...]] # 传入列名的列表 df[[区域, 面积, 价格]]布尔值向量获取行数据 # 布尔值s对象 df[价格]8000 df[df[价格]8000] # 布尔值列表 df_head df.head() df_head # 构建布尔值列表 bool_list [True,False,True,False,True] df_head[bool_list] # 布尔值数组 import numpy as np n1 np.array([True,False,True,False,True]) n1 df_head[n1]行索引下标切片获取行数据 # df[起始行下标值:结束行下标值:步长] 类似于字符串/列表/元组的切片操作 # 下标值(只能是整数)和索引值(整数,字符串,日期时间)不是一个东西 # 左闭右开 - 包含起始值, 不包含结束值 temp_df df.head(10) temp_df # 获取1,3,5行数据 temp_df[:5:2] # 获取前3行数据 temp_df[:3] # 步长为负数, 倒序获取行数据, 下标值可以为负数 temp_df[-1:-3:-1]2.2 loc/iloc获取子集 2.2.1 loc/iloc基本介绍 loc和iloc是s/df对象的属性 loc是通过索引值(肉眼看到的值), iloc是通过索引下标值(0,1,2,3…) 获取数据 df.loc[行索引值] - 获取行数据 df.loc[行索引值, 列名] - 获取行列数据 df.iloc[行索引下标] - 获取行数据 df.iloc[行索引下标, 列名下标] - 获取行列数据 2.2.2 loc属性获取子集 # 获取一行数据 df[行索引值] # 获取第5行数据, 返回s对象 temp_df.loc[4] # 获取第5行数据, 返回df对象 temp_df.loc[[4]] # 获取多行数据 df[[行索引值1, 行索引值2, ...]] # 获取第1, 3, 5行数据 temp_df.loc[[0, 2, 4]] # 行索引值切片获取行数据 # df.loc[起始索引值:结束索引值:步长] # 左闭右闭 - 包含起始值, 包含结束值 # 获取第2,3,4行数据 temp_df.loc[1:3] # 根据索引下标值 temp_df[1:3] # 隔一行获取一行数据 temp_df.loc[::2] # 倒序获取子集, 起始值和结束值要反过来, 步长为负数 temp_df.loc[8:2:-1] # 布尔值向量获取行数据 df.loc[布尔值向量] temp_df[朝向]南 temp_df.loc[temp_df[朝向]南] # 布尔值向量结合列名获取行列数据 df.loc[布尔值向量, [列名1, 列名2, ...]] temp_df.loc[temp_df[朝向]南, [地址, 朝向]] # 行索引值结合列名获取行列数据 df.loc[[行索引值1, 行索引值2,...],[列名1, 列名2, ...]] # 获取某个值数据 temp_df.loc[0, 价格] # 获取多行多列数据 temp_df.loc[[0, 2, 4], [地址, 户型, 价格]] # 行索引值切片结合列名获取行列数据 df.loc[起始索引值:结束索引值:步长, [列名1, 列名2, ...]] temp_df.loc[:4:2, [地址, 面积, 价格]]2.2.3 iloc属性获取子集 # 获取一行数据 df.iloc[行下标值] # 获取第一行数据, 返回s对象 temp_df.iloc[0] temp_df.iloc[[0]] # 获取最后一行数据 temp_df.iloc[-1] # 获取多行数据 df.iloc[[行下标1, 行下标2, ...]] temp_df.iloc[[0, 2, 4]] # 行下标切片获取多行数据 df.iloc[起始下标值:结束下标值:步长] 等同于 df[起始下标值:结束下标值:步长] # 左闭右开 temp_df.iloc[:5:2] temp_df[:5:2] # 行列下标切片获取子集 df.iloc[起始下标值:结束下标值:步长, 起始列下标值:结束列下标值:步长] # 获取1,3,5行, 并且获取地址,面积和朝向列 temp_df.iloc[:5:2, 1:6:2] # 行下标切片和列下标值获取子集 df.iloc[起始下标值:结束下标值:步长, [列下标1, 列下标2, ...]] # 获取1,3,5行, 并且获取地址,面积和朝向列 temp_df.iloc[:5:2, [1, 3, 5]] # 行列下标值获取子集 df.iloc[[行下标值1, 行下标值2, ...], [列下标值1, 列下标值2, ...]] # 获取1,3,5行, 并且获取地址,面积和朝向列 temp_df.iloc[[0, 2, 4], [1, 3, 5]] # 行下标值和列下标切片获取子集 df.iloc[[行下标值1, 行下标值2, ...], 起始列下标值:结束列下标值:步长] # 获取1,3,5行, 并且获取地址,面积和朝向列 temp_df.iloc[[0,2,4],1:6:2]2.3 query函数获取子集 # df.query(判断表达式) - 判断表达式和df[布尔值向量]相同 # 获取区域列中为 望京租房 的数据 temp_df[区域] 望京租房 temp_df[temp_df[区域] 望京租房] # sql语句 select * from 表a where 区域 望京租房 temp_df.query(区域 望京租房) # 判断表达式中有多个判断条件, 可以使用 and()或or(|) # 查询租房区域为望京、天通苑、回龙观并且朝向为东、南的房源数据 # 链式调用, query函数返回新的df, 新的df继续可以调用query() temp_df.query(区域 in (望京租房, 天通苑租房, 回龙观租房)).query(朝向 in (东, 南)) temp_df.query((区域 in (望京租房, 天通苑租房, 回龙观租房)) (朝向 in (东, 南))) # temp_df.query((区域 in (望京租房, 天通苑租房, 回龙观租房)) and (朝向 in (东, 南)))temp_df[((temp_df[区域]望京租房) | (temp_df[区域]天通苑租房) | (temp_df[区域]回龙观租房)) ((temp_df[朝向]东) | (temp_df[朝向]南))]2.4 isin函数获取子集 # 判断s或df对象中的数据值是否在values列表中, 如果在返回True, 否则返回False - s/df.isin(values[值1, 值2, ...]) # 返回一个布尔值构成的df对象 temp_df.isin(values[2室1厅,东]) temp_df[temp_df.isin(values[2室1厅,东])] # 返回布尔值构成的s对象 temp_df[区域].isin(values[望京租房, 天通苑租房, 回龙观租房]) temp_df[区域][temp_df[区域].isin(values[望京租房, 天通苑租房, 回龙观租房])] temp_df[temp_df[区域].isin(values[望京租房, 天通苑租房, 回龙观租房])] # 查询租房区域为望京、天通苑、回龙观并且朝向为东、南的房源数据 temp_df[区域].isin(values[望京租房, 天通苑租房, 回龙观租房]) temp_df[朝向].isin(values[东, 南]) temp_df[(temp_df[区域].isin(values[望京租房, 天通苑租房, 回龙观租房])) (temp_df[朝向].isin(values[东, 南]))]三、df增加列操作 # 导入模块 import pandas as pd import warnings warnings.filterwarnings(ignore) # 忽略警告信息 # 加载数据集 df pd.read_csv(data/LJdata.csv) # 获取前5行数据 temp_df df.head().copy() temp_df # 在df末尾增加新列数据 df[新列名] 常数值/列表/series对象 # 在df末尾新增一列省份列, 值都为北京 - 常数值 temp_df[省份] 北京 temp_df # 在df末尾新增一列区县列, 值为[朝阳区, 朝阳区, 西城区, 昌平区, 朝阳区] - 列表 # df的行数要和新增列表中的元素个数要相等 temp_df[区县] [朝阳区, 朝阳区, 西城区, 昌平区, 朝阳区] temp_df # 在df末尾新增一列新价格列, 在原价格上加1000 - series对象 (s对象的运算) temp_df[新价格] temp_df[价格] 1000 temp_df # 通过insert()在指定位置新增一列 # df.insert(loc列下标值, column新列名, value常数值/列表/s对象) # 在区域和地址列之间新增一列国家列, 值都为中国 temp_df.insert(loc1, column国家, value中国) temp_df # 在价格新增一列价格2列, 值为 价格和新价格的求和 temp_df.insert(loc6, column价格2, valuetemp_df[价格] temp_df[新价格]) temp_df四、df删除行列操作 # df.drop(labels, axis, inplace) # labels: 根据 行索引值或列名 进行删除 # axis: 按行或列删除, 默认是按行 0或index; 按列 1或columns # inplace: 是否在源数据集上删除, 默认是False, True # 删除第1, 3, 5行数据, 默认删除行数据 drop_df temp_df.drop(labels[0, 2, 4]) drop_df # 删除价格2列数据 temp_df.drop(labels价格2, axiscolumns) # 在源df上删除价格2列数据 temp_df.drop(labels价格2, axis1, inplaceTrue) # 保留地址, 户型, 面积三列数据 temp_df[[地址, 户型, 面积]]五、df数据去重操作 # s/df.drop_duplicates(subset,keep,inplace) # subset: 默认不写, 所有列值都相同的行数据; 可以通过列名列表指定对应列相同的行数据 # keep: 默认保留第一条数据 first, 保留最后一条数据 last, 删除所有重复数据 false # inplace: 是否在源数据集上修改 # 根据所有列相同的行数据进行去重 temp_df.drop_duplicates() # 根据户型和朝向列判断是否有重复行数据 # 默认保留第一条重复数据 temp_df.drop_duplicates(subset[户型, 朝向]) # 保留最后一条重复数据 temp_df.drop_duplicates(subset[户型, 朝向], keeplast) # 删除重复的数据 temp_df[朝向].drop_duplicates(keepFalse) # df对象没有unique操作 temp_df[朝向].unique() # 返回数组 temp_df[朝向].nunique() # 去重计数 count(distinct)六、df数据修改操作 6.1 直接修改数据 # 直接修改数据值 df[列名] 新值 - 常数值/列表/s对象 temp_df df.head().copy() temp_df # 修改看房人数列, 改为 100 temp_df[看房人数] 100 temp_df # 修改面积列, 改为 [70, 99, 90, 120, 80] - df的行数和列表中的元素个数相同 temp_df[面积] [70, 99, 90, 120, 80] temp_df # 修改价格列, 价格列1000 temp_df[价格] temp_df[价格] 1000 temp_df # 获取s对象 temp_s temp_df[价格] temp_s# s[索引下标值] 新值 temp_s[2] 20000 temp_s6.2 replace函数修改 # 通过replace函数实现修改 # s/df.replace(to_replace, value, inplace) # to_replace:需要替换的值 # value:替换后的值 # 将2室1厅替换成3室2厅 temp_df.replace(to_replace2室1厅, value3室2厅, inplaceTrue) temp_df temp_df.replace(to_replace[20000, 100], value999) # 对s对象实现替换操作 temp_df[朝向].replace(to_replace东南, value北)6.3 s对象通过apply函数执行自定义函数 temp_df df.head().copy() temp_df # 编写自定义函数 根据区域列的值判断是否为天通苑租房, 是返回昌平区, 否返回其他区 # 最少接受一个形参, 形参对应的实参值是s对象中每个值 def func1(x):print(x的值是-,x)if x 天通苑租房:return 昌平区else:return 其他区 # 通过apply函数调用自定义函数 s/df.apply(自定义函数名) temp_df[区域] temp_df[区域].apply(func1) temp_df temp_df df.head().copy() temp_df # 定义自定义函数式, 可以定义多个形参 def func2(x, arg1, arg2): # print(x的值是-, x) # print(arg1的值是-, arg1) # print(arg2的值是-, arg2)if x 天通苑租房:return arg1else:return arg2 # s对象调用自定义函数 # args(arg1, arg2) temp_df[区域].apply(func2, args(昌平区, 其他区)) # 形参名实参值 temp_df[区域].apply(func2, arg1昌平区, arg2其他区)6.4 df对象通过apply函数执行自定义函数 按列计算 # df对象调用apply函数来执行自定义函数 # 自定义函数接收的是df中一列或一行数据 # 定义自定义函数 def func3(x, arg1):# x是df中一行或一列数据 - s对象print(x的值是-, x)print(arg1的值是-, arg1)print(x.__dict__)# _name:获取当前列的列名, 或者是获取当前行的行索引值if x._name 价格:# s对象和数值型变量计算return x arg1else:return x# 默认是按列进行处理 axis0 # temp_df.apply(func3, args(1000,), axis0) temp_df.apply(func3, arg1 2000, axis0)按行计算 # 如果区域列的值为望京租房, 修改价格列的值为arg1 # 自定义函数 def func4(x, arg1):print(x的值是-, x)# 根据s对象的索引值获取数据值 s[索引值]if x[区域] 望京租房:x[价格] arg1return xelse:return x# 按行进行处理, axis1 temp_df.apply(func4, arg13000, axis1)6.5 df对象通过applymap函数执行自定义函数 # df对象调用applymap函数来执行自定义函数 # 自定义函数中接收的是df中每个值, 不再是一列或一行数据 # 自定义函数 def func5(x):print(x的值是-, x)if x in [燕莎租房,望京租房,团结湖租房]:return 朝阳区elif x 天通苑租房:return 昌平区elif x 团结湖租房:return 西城区else:return xtemp_df.applymap(func5)
http://www.pierceye.com/news/647089/

相关文章:

  • 网站订单系统模板专业的做网站公司
  • 怎么做加盟美容院网站黄骅港开发区
  • 品牌高端网站制作官网做网站用的小图标
  • 成都网站设计合理柚v米科技泉州建设公司
  • 网页制作与网站建设完全学习手册软件下载网站怎么做
  • linux系统网站空间如何分析网站关键词
  • 以下属于网站页面设计的原则有查询网站空间商
  • 建设银行网站链接网络推广有哪些常见的推广方法
  • 常州网络公司网站图片在线制作加字
  • 漕泾网站建设建立内部网站
  • 海宁市住房和城乡规划建设局网站北京十大装饰装修公司
  • 创新的常州做网站网站页面设计公司电话
  • 建站公司见客户没话说周年庆网站要怎么做
  • 建设银行网站字体建设官方网站
  • 建设部网站人员查询商城网站 没有什么文章 怎样优化
  • wordpress按标签筛选广州seo网站
  • 南宁手机建站公司常德网站开发服务
  • 智能锁东莞网站建设php网站开发需要学什么软件
  • 扒网站样式中国搜索网站排名
  • 网站空间和云服务器建设建材网站费用
  • 公司网站 正式上线wordpress 移动端不显示
  • 旅行网站排名前十名网站检测报告哪里做
  • 随州做网站wordpress 显示评论内容
  • 网站建设时间计划表非常赚又一个wordpress站点
  • 苏州网站小程序app开发公司wordpress如何上传文件大小
  • 同仁行业网站建设报价免费ui网站
  • 网站打开速度慢wordpress开发者选项怎么打开
  • 免费网站代理访问网站 营销型
  • 甘特图模板关于网站建设永嘉移动网站建设公司
  • 网站建设服务协议书做面包有哪些网站知乎