Python与数据分析--Pandas-1
目录
1.Pandas简介
2.Series的创建
1.通过数组列表来创建
2.通过传入标量创建
3.通过字典类型来创建
4.通过numpy来创建
3.Series的索引和应用
1. 通过index和values信息
2. 通过切片方法获取信息
4.DataFrame的创建
1.直接创建
2.矩阵方式创建
3.字典类型创建
5.DataFrame的索引和应用
1.DataFrame的索引信息提取
2.DataFrame的数据选择
3.索引器操作实例
1.Pandas简介
#Pandas简介
"""
Pandas(Panel data analysis)是一个强大的分析结构化数据的工具集,
使Python成为高效的数据分析环境。
1.Pandas的基础是NumPy(提供高性能的矩阵运算)
2.Pandas可用于数据挖掘和数据分析,同时也提供数据清洗功能
3.Pandas提供Series、DataFrame等数据结构DataFrames:二维数据,整个表格,多行多列
Series:一维数据,一行或者一列
"""
2.Series的创建
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
list1=[4,3,-3,10]
1.通过数组列表来创建
#Series的创建
a_ser=pd.Series(list1)
a_ser#一列是索引,一列是数值
2.通过传入标量创建
#传入标量
s=pd.Series(22)
s=pd.Series(22,['a','b','c'])
s
3.通过字典类型来创建
#通过字典来创建Series
a_dic={'a':92,'b':45,'c':33}
a=pd.Series(a_dic)
a
%%
#传入字典并且自定义索引
a=pd.Series({'A':90,'B':90,'C':90},index=['B','C','D'])
a
4.通过numpy来创建
#通过ndarray
b=pd.Series(np.arange(10,15),index=np.arange(20,25))
b
3.Series的索引和应用
1. 通过index和values信息
%%
#通过index和values获取所引和
print(b.index)
print(b.values)
%%
#index对象
b=pd.Series(['A','B','C'])
b
%%
b.index
%%
b.values
2. 通过切片方法获取信息
%%
a[1:3]
%%
#统计方面的用法
a.mean()
%%
#in函数的用法
#表示如果在Series中返回True,否则返回False
b=dict(a)
b
%%
'a' in a
'v' in a
'b' in a
4.DataFrame的创建
1.直接创建
# Dataframe building
# axis=0 axis=1
g=np.random.randint(60,100,(4,2))
g_df=pd.DataFrame(g,index=['Mary','Bob','Lee','Rose'],columns=['math','chinese'])
g_df
2.矩阵方式创建
# dataframe -- ndarray()
a_df=pd.DataFrame(np.random.rand(3,4),index=['A','B','C'])
a_df
3.字典类型创建
g_dic={'math':[96,92,89,90],'chinese':[90,21,89,79]}
b=pd.DataFrame(g_dic,index=['Mary','Bob','Lee','Rose'])
b
5.DataFrame的索引和应用
1.DataFrame的索引信息提取
# dataframe -- ndarray()
a_df=pd.DataFrame(np.random.rand(3,4),columns=['x','y','z','v'],index=['one','two','three'])
a_df%%
# basical actions for DataFrame functions
a_df.index%%
a_df.columns#列
%%
a_df.values#值
%%
a_df['x']#x列的信息
%%
a_df.T#dateframe转置
%%
a_df[:2]#切片
%%
a_df[['x','v']]#多个切片
2.DataFrame的数据选择
# DataFrame的数据选择
"""
对DataFrame的数据进行更灵活的选择,Pandas提供索引器(indexer)属性作为取值方法.
1.使用索引器iloc、loc,提供灵活的索引形式.
2.可使用loc(自定义索引)或iloc(自动索引)以NumPy风格的语法从DataFrame中选取行和列数据
3.通过loc和iloc,行、列数据都可以做切片和花式索引.
"""
%%
a_df
%%
a_df.loc[['one','two']]#提取前两行
%%
#同时也可以用切片索引
a_df.loc[:,['x','y','z']]
#当然也能够提取一部分
3.索引器操作实例
#索引器操作实例
s_dic={'Python':[60,99,81,66],'C':[63,69,96,84],'Java':[63,79,83,84]}
score=pd.DataFrame(s_dic,index=['Ann','Bob','Cindy','Lee'])
score
%%
#选择单行或者指定行
score.iloc[[0,2],[0,1]]#numpy的匹配对象(0,0)(2,1)
%%
#.loc
score.loc['Ann':'Cindy']
%%
#.iloc
score.iloc[0:2]
%%
#loc和iloc都可以修改数据
score.loc['Ann','C']=100
score.iloc[2,2]=99
score
相关文章:
Python与数据分析--Pandas-1
目录 1.Pandas简介 2.Series的创建 1.通过数组列表来创建 2.通过传入标量创建 3.通过字典类型来创建 4.通过numpy来创建 3.Series的索引和应用 1. 通过index和values信息 2. 通过切片方法获取信息 4.DataFrame的创建 1.直接创建 2.矩阵方式创建 3.字典类型创建 5.…...
如何完美通过token获取用户信息(springboot)
1. 什么是Token? 身份验证令牌(Authentication Token):在身份验证过程中,“token” 可以表示一个包含用户身份信息的令牌。 例如 Token(JWT)是一种常见的身份验证令牌,它包含用户的…...
2023 “华为杯” 中国研究生数学建模竞赛(B题)深度剖析|数学建模完整代码+建模过程全解全析
华为杯数学建模B题 当大家面临着复杂的数学建模问题时,你是否曾经感到茫然无措?作为2021年美国大学生数学建模比赛的O奖得主,我为大家提供了一套优秀的解题思路,让你轻松应对各种难题。 让我们来看看研赛的B题呀~! 问…...
文件相关工具类
文章目录 1.MultipartFile文件转File2.读取文件(txt、json)3.下载网络文件4.压缩文件 1.MultipartFile文件转File public File transferToFile(MultipartFile multipartFile) { // 选择用缓冲区来实现这个转换即使用java 创建的临时文件 使用 MultipartFile.transferto()…...
18795-2012 茶叶标准样品制备技术条件
声明 本文是学习GB-T 18795-2012 茶叶标准样品制备技术条件. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本标准规定了各类茶叶(除再加工茶)标准样品的制备、包装、标签、标识、证书和有效期。 本标准适用于各类茶叶(除再加工茶)感官品质…...
C++11互斥锁的使用
是C11标准库中用于多线程同步的库,提供互斥锁(mutex)及其相关函数。 以下是一些基本的使用示例: 1.创建和销毁互斥锁 #include <mutex>std::mutex mtx;2.加锁 std::lock_guard<std::mutex> lock(mtx); // 加锁 // 或者 mtx.lock(); //…...
unity 桌面程序
using System; using System.Collections; using System.Collections.Generic; using System.Runtime.InteropServices; using UnityEngine; public class chuantou : MonoBehaviour { [DllImport(“user32.dll”)] public static extern int MessageBox(IntPtr hwnd,string t…...
echarts统一纵坐标y轴的刻度线,刻度线对齐。
要求: 纵坐标刻度线对齐;刻度间隔为5;去掉千位默认的逗号;刻度最小是0. 效果图: 代码: yAxis: [{type: "value",position: "left",name: "kW",offset: 100,nameTextStyle:…...
一个数据库版本兼容问题
mysql旧的版本号是:5.3.10 本机版本号是:8.0.22 报错:“com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create” 1.程序里做兼容: <dependency><groupId>mysql</groupId>…...
学习Nano编辑器:入门指南、安装步骤、基本操作和高级功能
文章目录 使用Nano编辑器入门指南引言1.1 关于Nano编辑器1.2 Nano的起源和特点 安装Nano2.1 在Debian/Ubuntu系统上安装Nano2.2 在CentOS/RHEL系统上安装Nano2.3 在其他Linux发行版上安装Nano 启动Nano3.1 命令行启动Nano3.2 打开文件 Nano的基本操作4.1 光标移动和选择文本4.2…...
在北京多有钱能称为富
背景 首先声明,此讨论仅限个人的观点,因为我本身不富嘛,所以想法应该非常局限。 举个栗子 富二代问我朋友,100~1000w之间,推荐一款车? 一开始听到这个问题的时候,有被唬住,觉得预…...
Chrome扩展程序开发随记
在Chrome浏览器向正被浏览的外网网页植入自定义JS脚本 为了实现如标题的目的,需要开发一个Chrome扩展程序。接下来内容是实现简要步骤: 一、新建文件夹,命名为项目名,如“MyPlugin”。 二、进入文件夹内,新建名为“…...
使用命令行快速创建Vite项目
一、构建项目 在终端中使用如下命令行: npm create vite 二、定义项目名称 三、选择项目类型 Vanilla是我们常用的JavaScript,Vue和React是常用前端框架,可以根据自己的需要进行选择 通过上下键进行选择,按下回车进行确认 创建…...
int *a, int **a, int a[], int *a[]的区别
int *a; ---定义一个指向整型变量的指针a int **a; ---定义一个指向整型变量指针的指针a int a[]; ---定义一个整型变量数组a int *a[]; ---定义一个指向整型变量指针的数组a...
leetcode100----双指针
283. 移动零 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 1:输入: nums [0,1,0,3,12] 输出: [1,3,12,0,0] 示例 2:输入: nums …...
ORM基本操作
ORM基本操作 基本操作包括增删改查操作,即(CRUD操作) CRUD是指在做计算处理时的增加(Create)、读取查询(Read)、更新Update)和删除(Delete) ORM CRUD 核心-> 模型类管理器对象 每个继承自 models.Model 的模型类,都会有一个 objects 对象被同样继…...
c语言进阶部分详解(指针进阶2)
大家好!我快马加鞭接着写出指针部分part2部分。第一部分见:c语言进阶部分详解(指针进阶1)_总之就是非常唔姆的博客-CSDN博客 指针初阶部分见:c语言进阶部分详解(指针初阶)_总之就是非常唔姆的博…...
Java基础(一)——Hello World,8种数据类型,键盘录入
个人简介 👀个人主页: 前端杂货铺 🙋♂️学习方向: 主攻前端方向,正逐渐往全干发展 📃个人状态: 研发工程师,现效力于中国工业软件事业 🚀人生格言: 积跬步…...
JAVA学习笔记(IF判断结构)
/*** 学习JAVA单分支结构* 掷骰子游戏* 1.如果三个随机数的和大于15,则手气不错;* 2.如果三个随机数的和在10-15之间,手气一般;* 3.如果三个随机数的和1在0以下,手气不太好。*/public class TestIf01 {public static v…...
【跟小嘉学 PHP 程序设计】二、PHP 基本语法
系列文章目录 【跟小嘉学 PHP 程序设计】一、PHP 开发环境搭建 【跟小嘉学 PHP 程序设计】二、PHP 基本语法 文章目录 系列文章目录@[TOC](文章目录)前言一、PHP基本语法1.1、hello,world1.2、PHP语法的其他形式1.2.1、简短形式(了解即可)1.2.2、Script 风格1.2.3、ASP 风格1…...
Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
Java 二维码
Java 二维码 **技术:**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...
MFC 抛体运动模拟:常见问题解决与界面美化
在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...
tomcat入门
1 tomcat 是什么 apache开发的web服务器可以为java web程序提供运行环境tomcat是一款高效,稳定,易于使用的web服务器tomcathttp服务器Servlet服务器 2 tomcat 目录介绍 -bin #存放tomcat的脚本 -conf #存放tomcat的配置文件 ---catalina.policy #to…...
pgsql:还原数据库后出现重复序列导致“more than one owned sequence found“报错问题的解决
问题: pgsql数据库通过备份数据库文件进行还原时,如果表中有自增序列,还原后可能会出现重复的序列,此时若向表中插入新行时会出现“more than one owned sequence found”的报错提示。 点击菜单“其它”-》“序列”,…...
Django RBAC项目后端实战 - 03 DRF权限控制实现
项目背景 在上一篇文章中,我们完成了JWT认证系统的集成。本篇文章将实现基于Redis的RBAC权限控制系统,为系统提供细粒度的权限控制。 开发目标 实现基于Redis的权限缓存机制开发DRF权限控制类实现权限管理API配置权限白名单 前置配置 在开始开发权限…...
