DataFrame中实现int、float存储形式列之间的除法运算
客户需求
实现DataFrame列之间的除法运算
python代码如下
import pandas as pd
import numpy as np
df=pd.DataFrame([[1,2,30.6,0],[5,6,76.3,8.3],[9,0,11.9,12.4],[7,6,20.3,16.5]], #设置值index=list(['第一行','第二行','第三行','第四行']), #设行索引columns=list(['第一列','第二列','第三列','第四列']))#列索引
print('----------------输出df-------------')
print(df)print('----------------输出df每列的数据存储格式-------------')
print(df.dtypes)print('----------------输出第一列/第二列-------------')
df['第一列/第二列'] = (df['第一列'] / df['第二列']).replace(np.inf, 0)
print(df)
#第一列,第二列均为int64,第三行 9除0 会出现错误值,需要加 replace(np.inf, 0),将错误值填充为0
print('----------------输出对第三列、第四列、第一列/第二列存储形式进行转化-------------')
copydata = df.copy() # 复制df数据,避免取值复制报错
copydata['第三列'] = copydata['第三列'].apply(lambda x: round(x)) #将float值装化为int
copydata['第四列'] = copydata['第四列'].apply(lambda x: round(x)) #将float值装化为int
copydata['第一列/第二列'] =round(copydata['第一列/第二列'],2) #将float值保留2位小数
print(copydata)
print(copydata.dtypes)print('----------------输出第三列/第四列-------------')
copydata['第三列/第四列'] = (copydata['第三列'] / copydata['第四列']).replace(np.inf, 0)
print(copydata)
#第三列,第四列均为float值需要装化为int值
运行结果如下
D:\Python-Anaconda3\install\python.exe C:/Users/97356/Desktop/Python-week/test.py
----------------输出df-------------第一列 第二列 第三列 第四列
第一行 1 2 30.6 0.0
第二行 5 6 76.3 8.3
第三行 9 0 11.9 12.4
第四行 7 6 20.3 16.5
----------------输出df每列的数据存储格式-------------
第一列 int64
第二列 int64
第三列 float64
第四列 float64
dtype: object
----------------输出第一列/第二列-------------第一列 第二列 第三列 第四列 第一列/第二列
第一行 1 2 30.6 0.0 0.500000
第二行 5 6 76.3 8.3 0.833333
第三行 9 0 11.9 12.4 0.000000
第四行 7 6 20.3 16.5 1.166667
----------------输出对第三列、第四列、第一列/第二列存储形式进行转化-------------第一列 第二列 第三列 第四列 第一列/第二列
第一行 1 2 31 0 0.50
第二行 5 6 76 8 0.83
第三行 9 0 12 12 0.00
第四行 7 6 20 16 1.17
第一列 int64
第二列 int64
第三列 int64
第四列 int64
第一列/第二列 float64
dtype: object
----------------输出第三列/第四列-------------第一列 第二列 第三列 第四列 第一列/第二列 第三列/第四列
第一行 1 2 31 0 0.50 0.00
第二行 5 6 76 8 0.83 9.50
第三行 9 0 12 12 0.00 1.00
第四行 7 6 20 16 1.17 1.25Process finished with exit code 0
DataFrame中实现int、float存储形式列之间的除法运算相关推荐
- python行转列_pandas.DataFrame中pivot()如何实现行转列的问题(代码)
本篇文章给大家带来的内容是关于pandas.DataFrame中pivot()如何实现行转列的问题(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 示例: 有如下表需要进行行转 ...
- pandas使用dropna函数删除dataframe中全是缺失值的数据列(drop columns with all missing values in dataframe)
pandas使用dropna函数删除dataframe中全是缺失值的数据列(drop columns with all missing values in dataframe) 目录
- pandas使用duplicated函数删除dataframe中重复列名称的数据列、默认保留重复数据列中的第一个数据列(removing duplicate columns in dataframe)
pandas使用duplicated函数删除dataframe中重复列名称的数据列.默认保留重复数据列中的第一个数据列(removing duplicate columns in dataframe) ...
- R语言dplyr包的mutate函数将列添加到dataframe中或者修改现有的数据列:基于条件判断创建布尔型指示变量、将异常离散编码转化为NA值
R语言dplyr包的mutate函数将列添加到dataframe中或者修改现有的数据列:基于条件判断创建布尔型指示变量.将异常离散编码转化为NA值 目录
- R语言dplyr包的mutate函数将列添加到dataframe中或者修改现有的数据列:使用na_if()函数将0值替换为NA值、负收入替换为NA值
R语言dplyr包的mutate函数将列添加到dataframe中或者修改现有的数据列:使用na_if()函数将0值替换为NA值.负收入替换为NA值 目录
- c语言int的存储形式,C语言变量的存储类型有3种,即int型、float型和char型
摘要: 语言变有半裙大头针别样时采用的是大约( )度斜向下别针法.使用椭圆工具拖出正圆形时,存储需要按住的快捷键是在下面的文件格式中,型f型和型常用于网页中的图像制作的是... 语言变有半裙大头针别样 ...
- c语言如何用串口发送数据类型,串口通信中的int float型数据的处理和发送
在做下位机通信时往往会用到串口,包括下位机将数据传输给上位机,或者是下位机与下位机之间进行数据传输,这时候就会遇到发送数据的问题,单片机通过串口发送数据时往往是一次一个字节(8位),如果传输char( ...
- C/C++语言中计算int,float,double,char四种数据类型所能表示的数据范围
char 1字节 short 2字节 int 4字节 long 4字节 long long 8字节 float ...
- java+boolean+属性,java – 从属性中获取int,float,boolean和string
如果您有一类配置值,例如常量类,并且要从配置(属性)文件加载所有值,则可以创建一个小帮手类并使用反射: public class ConfigLoader { public static void l ...
最新文章
- spring mvc 篇
- [转] 背完这444句,你的口语绝对不成问题了
- 用Kettle的一套流程完成对整个数据库迁移 费元星
- TCP/IP详解--学习笔记(7)-广播和多播,IGMP协议
- 前端开发中Cookie那些事儿
- .net学习之委托和事件
- vscode 最好的ui主题
- Mybaits插入记录返回主键值
- ELF文件的签名与验证
- R语言聚类算法之密度聚类(Density-based Methods)
- sharepoint_wf 启动窗口设计,支配给自由域用户
- 如何 tune spark jobs
- python常用文本处理功能
- 题目:求1 + 2!+ 3!+ ... + 20!的和
- 程序设计与编译(C++入门)
- 六石管理学:新增一类产品问题,面子类问题
- 1、NoSQL数据库简介
- 电脑上虚拟打印机如何将word转jpg
- 苹果付费app共享公众号_公众号+搭建知识付费网课分销平台聚合型玩法解析
- 获取UWP应用的三种方式