机器学习-Day04

2023-11-19

在处理包含字符串的数据时使用pandas

常用的数据类型:1.series一维,带标签数组

2.dataframe二维,Series容器

1.pandas索引

import pandas as pd

t = pd.Series([1, 21, 31, 51, 852])
print(t)
print("*" * 100)
# 指定索引
t2 = pd.Series([1, 23, 2, 2, 1], index=list("abcde")).astype(float)
print(t2)
print("*" * 100)
# 字典的“键”自动变为索引
temp_dict = {"name": "xiaoming", "age": 18, "tel": 13555}
t3 = pd.Series(temp_dict)
print(t3)
print(t3.dtype)
print(t3["age"])
print(t3[1])
print(t3[[0, 2]])
print(t3[["name", "age"]])
print(t3.index)
print(list(t3.index)[:2])

pandas读取csv文件

import pandas as pd

#pandas读取csv文件
df = pd.read_csv("./dogNames2.csv")
print(df)
from pymongo import MongoClient
import pandas as pd

client = MongoClient()
collection = client["douban"]["tv1"]
data = list(collection.find())

t1 = data[0]
t1 = pd.Series(t1)

2.DataFrame

2.1 Dataframe创建

import pandas as pd
import numpy as np
t0 = pd.DataFrame(np.arange(12).reshape(3,4),index=list("abc"),columns=list("wxyz"))
print(t0)

d1 = {"name":["xiaoming","xiaohong"],"age":[20,30],"tel":[10086,10010]}
t1 = pd.DataFrame(d1)
print(t1)

d2 = [{"name":"xiaoming","age":20,"tel":10086},{"name":"xiaohong","age":52,"tel":11225},{"name":"zhangliang","age":15,"tel":56321}]
t2 = pd.DataFrame(d2)
print(t2)

2.2 DataFrame信息筛选

 2.3 pandas排序

import pandas as pd
import numpy as np
# #pandas读取csv文件
# df = pd.read_csv("./dogNames2.csv")
# # print(df)
# print(df.head())
# print(df.tail())
# #DataFrame中排序的方法
# df = df.sort_values(by="Count_AnimalName",ascending=False) #按照某一列进行排序
# print(df.head()) #默认是5行
# print("*"*100)
# print(df.tail()) #默认是5行
#
# # pandas取行或者列的注意点
# # ——方括号写数组,表示取行,对行进行操作
# # ——写字符串表示取列索引,对列进行操作
# print(df[:20]["Row_Labels"])

2.4 pandas定位

import pandas as pd
import numpy as np

t0 = pd.DataFrame(np.arange(12).reshape(3,4),index=list("abc"),columns=list("wxyz"))
print(t0)
print("*"*100)
print(t0.loc["a","z"]) #"a"行,“z"列
print("*"*100)
print(t0.loc[["a","b"],:]) #”a“、"b" 两行
print("*"*100)
print(t0.loc[["a","b"],["w","x"]])  #”a“、"b" 两行 , ”w“、"x" 两行
print("*"*100)
print(t0.iloc[1]) #第2行
print("*"*100)
print(t0.iloc[:,2]) #第3列
print(t0.iloc[:,[2,1]]) #第3列,第2列
print("*"*100)
print(t0.iloc[1:,:2]) #第1行之后的每一行,第2列之前的每一列

2.5 pandas布尔索引

 

import pandas as pd

#pandas读取csv文件
df = pd.read_csv("./dogNames2.csv")

# 布尔索引
print(df[(800<df["Count_AnimalName"])&(df["Count_AnimalName"]<1000)])

2.6 缺失数据的处理

 3.统计方法和字符串离散化

import pandas as pd
import numpy as np
file_path = "IMDB-Movie-Data.csv"
#pandas读取csv文件
df = pd.read_csv(file_path)
# 获取目录信息
print(df.info())
# 获取平均分数
print(df["Rating"].mean())
# 获取导演人数
print(len(set(df["Director"].tolist())))
print(len(df["Director"].unique()))
# 获取演员的人数
temp_Actors_list = df["Actors"].str.split(",").tolist()
actors_list = [i for j in temp_Actors_list for i in j]
actors_num = len(set(actors_list))
print(actors_num) 

 

import pandas as pd
from matplotlib import pyplot as plt
file_path = "./IMDB-Movie-Data.csv"
df = pd.read_csv(file_path)
print(df.head())
print(df.info())
# rating,runtime分布情况
#选择图形
runtime_data = df["Runtime (Minutes)"].values
max_runtime = runtime_data.max()
min_runtime = runtime_data.min()

#计算组数
print(max_runtime-min_runtime)
num_bin = (max_runtime-min_runtime)//5
#设置图形大小
plt.figure(figsize=(20,8),dpi=80)
plt.hist(runtime_data,num_bin)
plt.xticks(range(min_runtime,max_runtime+5,5))
plt.show()

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

机器学习-Day04 的相关文章

随机推荐

  • python读取.csv文件时报错解决方案(无法打开“parsers.pyx”: 找不到文件)

    版权声明 本文为CSDN博主 Jayden yang 的原创文章 遵循CC 4 0 BY SA版权协议 转载请附上原文出处链接及本声明 原文链接 https blog csdn net qq 41997920 article details
  • Class 06 - 良好的编码习惯(保持代码的可读性)

    Class 06 良好的编码习惯 保持代码的可读性 保持代码的可读性 编码风格 命名的注意事项 文件名 对象名称 语法 运算符 逗号 中括号和小括号 大括号 代码缩进 代码的长度 赋值 注释 调试报错 保持代码的可读性 在编写 R语言 或任
  • SpringBoot2.X配置SSL(https访问)

    一 application yml配置 application yml配置 XXX keystore放到项目根目录下与pom xml同级 server port 443 ssl key store XXX keystore 生成的证书名字
  • Linux 挂载目录

    1 查看当前磁盘的情况 fdisk l root dmp3 fdisk l WARNING fdisk GPT support is currently new and therefore in an experimental phase
  • 3. 决策树原理及数学建模实战

    决策树 文章目录 一 概念 二 ID3 2 1 概念 2 2 算法流程 2 3 信息熵 2 4 特点 三 C4 5 3 1 概念 3 2 信息增益率 3 3 处理连续值 3 4 过拟合问题 3 4 1 提出 3 4 2 剪枝 四 CART
  • sqli-labs靶场Less-7

    备注 虽然从首页进来就知道是dump into outfile 但我还是假设按不知道的流程来一步步尝试 这样才会印象深刻 不然我觉得失去练习的意义了 1 访问首页 Less 7 index php id 1 这里的传参点是id 探测六步 判
  • LDO(低压差线性稳压器)设计电源注意事项(学习笔记)

    1 LDO最大输出电流 按照2 3原则选择 即电路总消耗电流的3 2倍 若电路总消耗电流50 mA 那么LDO的最大输出电流为75mA 2 封装散热以及功耗 功耗 输入电压 输出电压 工作电流 按照1 2原则选择LDO封装 达不到的可以PC
  • 多个js文件调用函数问题

    多个js文件调用函数问题 最近在做一个项目 用的 jquery 和 easyui 有很多常用的函数我就把它们写到了common js里面 然后又写了一link jsp 把常用的css和js文件都写在里面 然后页面直接include 写着写着
  • 蒸馏神经网络(Distill the Knowledge in a Neural Network)

    本文是阅读Hinton 大神在2014年NIPS上一篇论文 蒸馏神经网络的笔记 特此说明 此文读起来很抽象 大篇的论述 鲜有公式和图表 但是鉴于和我的研究方向 神经网络的压缩十分相关 因此决定花气力好好理解一下 1 Introduction
  • vuepress-yarn-nodes-静态网页_个人博客搭建

    nodes官网 https nodejs org en 先下载nodes进行安装 一般nodes会自带包管理器npm 注意npm与nodes的对应关系 除了npm之外还有yarn包管理器 一般会用npm安装这个包 npm install g
  • esp32cam门禁系统简易教程

    esp32cam门禁系统简易教程 人脸识别 1 环境安装 最好有梯子 arduino IDE 1 官网下载地址 选择相应版本下载Windows ZIP file 无脑安装 2 配置IDE 打开IDE 文件 gt 首选项 gt 附加开发板管理
  • Android属性动画

    http bbs itheima com thread 172632 1 1 html 什么是Android属性动画 属性动画 Property Animation 系统是一个健壮的动画框架系统 它可以满足你大部分动画需求 不管动画对象是否
  • Spring Boot 使用及启动源码解析一

    前言 本篇文章会介绍Spring Boot 的基本原理 以及以及一些使用 常见的配置方式等 如何从单一架构延申到现在的前后端分离 垂直应用架构 的项目 从网站流量很小到现在的网站流量动则几百万上下的 发展 加速前端的架构 到后面 的分布式服
  • [QT编程系列-25]:多线程机制 - QThread和MoveToThread简介

    目录 第1章 简介 1 1 多线程的目的 1 2 QThread多线程使用方法 1 3 QT支持多线的步骤 第2章 QThread 2 1 概述 2 2 moveToThread 第1章 简介 1 1 多线程的目的 QThread类提供了一
  • deepin访问不了网页

    deepin15 解决访问不了网页 IP能ping通 页面访问不了 IP能ping通 ping域名失败 是下边这个情况 执行成功 ping 202 108 22 5 baidu的ip 执行失败 ping www baidu com 是因为浏
  • ElementUi常用组件创建前端页面

    elementui 创建前端页面
  • Qt小项目2 图片查看器

    头文件 ifndef WIDGET H define WIDGET H include
  • Shell脚本概述、简单Shell脚本的编写

    一 shell概述 shell是一个命令行解释器 它接收应用程序 用户命令 然后调用操作系统内核 shell还是一个强大的编程语言 易编写 易调试 灵活性强 二 shell解析器 1 Linux提供的shell解析器有 root CS YT
  • 大起大落,蚂蚁上市被叫停,蚂蚁的程序员们怎么样了?

    继马云被有关部门联合约谈以后 万众瞩目的蚂蚁上市被叫停了 一石激起千层浪 这个爆炸性的新闻引起了人们的热议 来看看大家都说了些什么 首先表达一下对蚂蚁金服员工的深切同情 毕竟之前大家都以为马上就能实现财务自由 走上人生巅峰 结果来了这么一出
  • 机器学习-Day04

    在处理包含字符串的数据时使用pandas 常用的数据类型 1 series一维 带标签数组 2 dataframe二维 Series容器 1 pandas索引 import pandas as pd t pd Series 1 21 31