定量数据和定性数据
定量数据本质上是数值,应该是衡量某样东西的数量。
定性数据本质上是类别,应该是描述某样东西的性质。
全部的数据列如下,其中既有定性列也有定量列;
import pandas as pdpd.options.display.max_columns = None
pd.set_option('expand_frame_repr', False)
salary_ranges = pd.read_csv('./data/Salary_Ranges_by_Job_Classification.csv')
print(salary_ranges.head())
# SetID JobCode Eff Date SalEndDate SalarySetID SalPlan Grade Step BiweeklyHighRate BiweeklyLowRate UnionCode ExtendedStep PayType
# 0 COMMN 109 07/01/2009 12:00:00 AM 06/30/2010 12:00:00 AM COMMN SFM 0 1 $0.00 $0.00 330 0 C
# 1 COMMN 110 07/01/2009 12:00:00 AM 06/30/2010 12:00:00 AM COMMN SFM 0 1 $15.00 $15.00 323 0 D
# 2 COMMN 111 07/01/2009 12:00:00 AM 06/30/2010 12:00:00 AM COMMN SFM 0 1 $25.00 $25.00 323 0 D
# 3 COMMN 112 07/01/2009 12:00:00 AM 06/30/2010 12:00:00 AM COMMN SFM 0 1 $50.00 $50.00 323 0 D
# 4 COMMN 114 07/01/2009 12:00:00 AM 06/30/2010 12:00:00 AM COMMN SFM 0 1 $100.00 $100.00 323 0 M
.info()可以了解数据的列信息以及每列非null的行数;
print(salary_ranges.info())# <class 'pandas.core.frame.DataFrame'>
# RangeIndex: 1356 entries, 0 to 1355
# Data columns (total 13 columns):
# # Column Non-Null Count Dtype
# --- ------ -------------- -----
# 0 SetID 1356 non-null object
# 1 Job Code 1356 non-null object
# 2 Eff Date 1356 non-null object
# 3 Sal End Date 1356 non-null object
# 4 Salary SetID 1356 non-null object
# 5 Sal Plan 1356 non-null object
# 6 Grade 1356 non-null object
# 7 Step 1356 non-null int64
# 8 Biweekly High Rate 1356 non-null object
# 9 Biweekly Low Rate 1356 non-null object
# 10 Union Code 1356 non-null int64
# 11 Extended Step 1356 non-null int64
# 12 Pay Type 1356 non-null object
# dtypes: int64(3), object(10)
# memory usage: 137.8+ KB
# None
也可以使用以下方法更快速的计算缺失值的信息;
print(salary_ranges.isnull().sum())
# SetID 0
# Job Code 0
# Eff Date 0
# Sal End Date 0
# Salary SetID 0
# Sal Plan 0
# Grade 0
# Step 0
# Biweekly High Rate 0
# Biweekly Low Rate 0
# Union Code 0
# Extended Step 0
# Pay Type 0
# dtype: int64
describe方法查看定量数据的描述性统计;Pandas认为,数据只有3个定量列:Step、Union Code和Extended Step(步进、工会代码和增强步进)。先不说步进和增强步进,很明显工会代码不是定量的。虽然这一列是数,但这些数不代表数量,只代表某个工会的代码
print( salary_ranges.describe())# Step Union Code Extended Step
# count 1356.000000 1356.000000 1356.000000
# mean 1.294985 392.676991 0.150442
# std 1.045816 338.100562 1.006734
# min 1.000000 1.000000 0.000000
# 25% 1.000000 21.000000 0.000000
# 50% 1.000000 351.000000 0.000000
# 75% 1.000000 790.000000 0.000000
# max 5.000000 990.000000 11.000000
最值得注意的特征是一个定量列Biweekly High Rate(双周最高工资)和一个定性列Grade(工作种类);
salary_ranges = salary_ranges[['BiweeklyHighRate', 'Grade']]
print(salary_ranges.head())# BiweeklyHighRate Grade
# 0 $0.00 0
# 1 $15.00 0
# 2 $25.00 0
# 3 $50.00 0
# 4 $100.00 0
查看两个字段的类型;
print(salary_ranges.info())# <class 'pandas.core.frame.DataFrame'>
# RangeIndex: 1356 entries, 0 to 1355
# Data columns (total 2 columns):
# # Column Non-Null Count Dtype
# --- ------ -------------- -----
# 0 BiweeklyHighRate 1356 non-null object
# 1 Grade 1356 non-null object
# dtypes: object(2)
# memory usage: 21.3+ KB
# None
我们清理一下数据,移除工资前面的美元符号,保证数据类型正确。当处理定量数据时,一般使用整数或浮点数作为类型(最好使用浮点数);定性数据则一般使用字符串或Unicode对象。
salary_ranges['BiweeklyHighRate'] = salary_ranges['BiweeklyHighRate'].map(lambda value:value.replace('$',''))
print(salary_ranges.head())# BiweeklyHighRate Grade
# 0 0.00 0
# 1 15.00 0
# 2 25.00 0
# 3 50.00 0
# 4 100.00 0
数据类型并没有变
print(salary_ranges.info())
# <class 'pandas.core.frame.DataFrame'>
# RangeIndex: 1356 entries, 0 to 1355
# Data columns (total 2 columns):
# # Column Non-Null Count Dtype
# --- ------ -------------- -----
# 0 BiweeklyHighRate 1356 non-null object
# 1 Grade 1356 non-null object
# dtypes: object(2)
# memory usage: 21.3+ KB
# None
将BiweeklyHighRate和Grade列中的数据分别转换为浮点数、字符串;
salary_ranges['BiweeklyHighRate'] = salary_ranges['BiweeklyHighRate'].astype(float)
salary_ranges['Grade'] = salary_ranges['Grade'].astype(str)
print(salary_ranges.info())# <class 'pandas.core.frame.DataFrame'>
# RangeIndex: 1356 entries, 0 to 1355
# Data columns (total 2 columns):
# # Column Non-Null Count Dtype
# --- ------ -------------- -----
# 0 BiweeklyHighRate 1356 non-null float64
# 1 Grade 1356 non-null object
# dtypes: float64(1), object(1)
# memory usage: 21.3+ KB
# None
相关文章:

定量数据和定性数据
定量数据本质上是数值,应该是衡量某样东西的数量。 定性数据本质上是类别,应该是描述某样东西的性质。 全部的数据列如下,其中既有定性列也有定量列; import pandas as pdpd.options.display.max_columns None pd.set_option(e…...

【Linux】:体系结构与进程概念
朋友们、伙计们,我们又见面了,本期来给大家解读一下有关Linux体系结构和进程的知识点,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成! C 语 言 专 栏:C语言:从入…...

react-router-dom 版本6.18.0中NavLink的api和属性介绍
React Router 是一个基于 React 的路由库,它可以帮助我们在 React 应用中实现页面的切换和路由的管理。而 NavLink 则是 React Router 中的一个组件,它可以帮助我们实现导航栏的样式设置和路由跳转。 在 React Router 版本6.18.0 中,NavLink…...

八叉树(Octree)和KD树区别?2d tree与3d tree区别?
一、八叉树(Octree)和KD树 八叉树(Octree) 结构:八叉树是一种用于三维空间数据的树状结构,每个分支节点恰好有八个子节点。每个节点代表空间中的一个立方体区域,这个立方体区域被均匀地分割成…...

Union(联合体、共用体)
结构体和共用体的区别在于:结构体的各个成员会占用不同的内存,互相之间没有影响;而共用体的所有成员占用同一段内存,修改一个成员会影响其余所有成员。 结构体占用的内存大于等于所有成员占用的内存的总和(成员之间可能…...

C++11的互斥包装器
文章目录 1. 为何要引入互斥包装器?2. lock_guard3. unique_lock4. 两者之间的不同5. 总结 1. 为何要引入互斥包装器? 在C多线程中会经常用到mutex,在使用的时候lock后,有时候会忘记使用unlock进行解锁造成死锁,或者在…...

HR应用在线人才测评,给企业招聘带来的好处
一、什么是人才测评? 人才测评是指运用一系列的科学方法,对人的基本素质,专业能力,心理健康,性格进行选拔,评价及发展人才的一种科学方法。近十多年,它被广泛运用于国有大型企业的人才招聘和人…...

深入了解百度爬虫工作原理
在当今数字化时代,互联网已经成为人们获取信息的主要渠道之一。而搜索引擎作为互联网上最重要的工具之一,扮演着连接用户与海量信息的桥梁角色。然而,我们是否曾经好奇过当我们在搜索引擎中输入关键词并点击搜索按钮后,究竟是如何…...

【C语言基础】分享近期学习到的volatile关键字、__NOP__()函数以及# #if 1 #endif
📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨ 📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 📢:文章若有幸对你有帮助,可点赞 👍…...

docker容器自启动
场景 当服务器关机重启后,docker容器每次都要去docker start 容器id 怎么可以下次让它自启动呢? 解决 先 # docker ps -a 查到之前启动过的容器id # docker update --restartalways 容器id重启后,reboot,就不用再单独去启动容…...

【C++】:模板的使用
目录 1、泛型编程 2、函数模板 2.1、函数模板概念 2.2、函数模板格式 2.3、函数模板的原理 2.4、函数模板的实例化 2.6、模板参数的匹配原则 3、类模板 3.1、 类模板的定义格式 3.2、 类模板的实例化 4、非类型模板参数 5、模板的特化 5.1、函数模板特化 5.2、类模…...

Springboot框架中使用 Redis + Lua 脚本进行限流功能
Springboot框架中使用 Redis Lua 脚本进行限流功能 限流是一种用于控制系统资源利用率或确保服务质量的策略。在Web应用中,限流通常用于控制接口请求的频率,防止过多的请求导致系统负载过大或者防止恶意攻击。 什么是限流? 限流是一种通过…...

【nlp】2.5(cpu version) 人名分类器实战项目(对比RNN、LSTM、GRU模型)
人名分类器实战项目 0 项目说明1 案例介绍2 案例步骤2.1 导入必备的工具包2.2 数据预处理2.2.1 获取常用的字符数量2.2.2 国家名种类数和个数2.2.3 读数据到python环境中2.2.4 构建数据源NameClassDataset2.2.5 构建迭代器遍历数据2.3 构建RNN及其变体模型2.3.1 构建RNN模型2.3…...

记录基于scapy构造ClientHello报文的尝试
最近有个需求就是用scapy构造https的client hello报文,由用户指定servername构造对应的报文。网上对于此的资料甚少,有的也是怎么去解析https报文,但是对于如果构造基本上没有找到相关的资料。 一直觉得最好的老师就是Python的help功能和dir功…...

程序设计实践学习笔记
第1题 题目描述 创建一个返回四舍五入到最接近整数的分数之和的函数。在矩阵中有每行的第一个数字表示分子,第二个数子表示分母,挑战者需要将该分数的结果进行四舍五入并将矩阵中所有分数结果总和进行返回。 输入输出格式 输入格式 数字 N 表示的是矩阵的行数。…...

Ubuntu中apt-get update显示域名解析失败
第一步 检查主机->虚拟机能否ping成功 ping 红色框中的IPv4地址 能通,表示虚拟机ip配置成功;否则,需要先配置虚拟机ip 第二步 检查是否能ping成功百度网址 ping www.baidu.com 若不成功,可能原因 虚拟机没联网,打开火狐浏览器…...

go学习之简单项目
项目 文章目录 项目1.项目开发流程图2.家庭收支记账软件项目2)项目代码实现3)具体功能实现 3.客户信息管理系统1)项目需求说明2)界面设计3)项目框架图4)流程5)完成显示客户列表的功能6ÿ…...

代码随想录二刷 | 数组 | 总结篇
代码随想录二刷 | 数组 | 总结篇 基础知识二分查找移除元素有序数组的平方长度最小的数组最小覆盖子串螺旋数组 基础知识 定义:数组是存放在连续内存空间上的相同类型数据的集合 特点: 数组下标从 0 开始数组内存空间的地址是连…...

go test 命令详解
文章目录 1.简介2.test flag3.test/binary flags4.常用选项5.示例参考文献 1.简介 go test 是 Go 用来执行测试函数(test function)、基准函数(benchmark function)和示例函数(example function)的命令。 …...

【Mysql学习笔记】1 - Mysql入门
一、Mysql5.7安装配置 下载后会得到zip 安装文件解压的路径最好不要有中文和空格这里我解压到 D:\hspmysql\mysql-5.7.19-winx64 目录下 【根据自己的情况来指定目录,尽量选择空间大的盘】 添加环境变量 : 电脑-属性-高级系统设置-环境变量,在Path 环境变量增加mysq…...

sentinel 网关
网关简介 大家都都知道在微服务架构中,一个系统会被拆分为很多个微服务。那么作为客户端要如何去调用这么多的微服务呢?如果没有网关的存在,我们只能在客户端记录每个微服务的地址,然后分别去调用。 这样的架构,会存在…...

常见面试题-MySQL的Explain执行计划
了解 Explain 执行计划吗? 答: explain 语句可以帮助我们查看查询语句的具体执行计划。 explain 查出来的各列含义如下: id:在一个大的查询语句中,每个 select 关键字都对应一个唯一的 id select_type:…...

SpringBoot静态资源配置
项目中 SSM中配置 第一种:配置文件中 <mvc:resources mapping"/js/**" location"/js/"/> <mvc:resources mapping"/css/**" location"/css/"/> <mvc:resources mapping"/html/**" location&q…...

Java拼图
第一步是创建项目 项目名自拟 第二部创建个包名 来规范class 然后是创建类 创建一个代码类 和一个运行类 代码如下: package heima;import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; import jav…...

Linux 怎样通过win 远程桌面连接链接Linux后台服务器的可视化图形界面
目的概述:因不想后台直接操作(操作不便),所以想到能否基于xrdp协议服务利用 win自带的远程桌面服务,链接到后台,类似于vnc的使用方式,涉及操作系统版本:win11 、 CentOS 7.4 、CentO…...

Java 实现随机图形
要求 定义4个类,MyShape、MyLine、MyRectangle和MyOval,其中MyShape是其他三个类的父类。MyShape为抽象类,包括图形位置的四个坐标;一个无参的构造方法,将所有的坐标设置为0;一个带参的构造函数࿰…...

java 读写文件的代码。
java 读写文件的代码。 import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStr…...

如何使用贝锐花生壳内网穿透远程访问JupyterNotebook?
在数据科学领域,Jupyter Notebook 已成为处理数据的必备工具。 其用途包括数据清理和探索、可视化、机器学习和大数据分析。Jupyter Notebook的安装非常简单,如果你是小白,那么建议你通过安装Anaconda来解决Jupyter Notebook的安装问题&#…...

文本向量化
文本向量化表示的输出比较 import timeimport torch from transformers import AutoTokenizer, AutoModelForMaskedLM, AutoModel# simcse相似度分数 def get_model_output(model, tokenizer, text_str):"""验证文本向量化表示的输出:param model: 模型的…...

java--贪吃蛇
import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.Random;public class Snake extends JFrame implements KeyListener, ActionListener, MouseListener {int slong 2;//蛇当前长度//蛇坐标int[] Snakex new int[100];int[] Snakey new…...