首页 > 其他分享 >pandas dataframe使用方法

pandas dataframe使用方法

时间:2023-04-03 21:14:05浏览次数:51  
标签:kind df DataFrame python 销售额 dataframe 可视化 方法 pandas

目录

基本读写:

使用 Pandas DataFrame 的步骤如下:

导入 Pandas 模块

python

import pandas as pd

创建 DataFrame

python

df = pd.DataFrame({
	'姓名': ['张三', '李四', '王五'],
	'年龄': [18, 25, 30],
	'性别': ['男', '女', '男']
})

这将创建一个包含三行数据和三列的 DataFrame,其中包括姓名、年龄和性别。

访问 DataFrame 数据

可以使用 DataFrame 的 .head() 方法查看 DataFrame 的前几行数据。

python

print(df.head())

输出:

   姓名  年龄 性别
0  张三  18  男
1  李四  25  女
2  王五  30  男

使用 DataFrame 的 .loc[] 方法可以根据行和列的标签来访问数据。

python

print(df.loc[0, '姓名']) # 输出:张三

使用 DataFrame 的 .iloc[] 方法可以根据行和列的位置来访问数据。

python

print(df.iloc[0, 0]) # 输出:张三

处理 DataFrame 数据

DataFrame 可以通过多种方式进行处理,例如:

选择特定列:可以使用列名称或列索引来选择特定列。

python

print(df['姓名']) # 输出:0    张三\n1    李四\n2    王五\nName: 姓名, dtype: object

选择特定行:可以使用 .loc[] 或 .iloc[] 方法来选择特定行。

python

print(df.loc[0]) # 输出:姓名    张三\n年龄    18\n性别     男\nName: 0, dtype: object

过滤数据:可以使用布尔索引来过滤数据。

python

print(df[df['年龄'] > 20]) # 输出:姓名    李四\n年龄    25\n性别     女\nName: 1, dtype: object\n姓名    王五\n年龄    30\n性别     男\nName: 2, dtype: object

对数据进行排序:可以使用 .sort_values() 方法对数据进行排序。

python

    print(df.sort_values('年龄', ascending=False)) # 输出:姓名    王五\n年龄    30\n性别     男\nName: 2, dtype: object\n姓名    李四\n年龄    25\n性别     女\nName: 1, dtype: object\n姓名    张三\n年龄    18\n性别     男\nName: 0, dtype: object

以上是使用 Pandas DataFrame 的基本步骤,根据具体需求和场景,还可以进行更多的数据处理和操作。

数据可视化

可以使用 Pandas 的 .plot() 方法和 Matplotlib 库对 DataFrame 的数据进行可视化。下面是一个简单的例子:

假设我们有如下 DataFrame:

python

import pandas as pd

data = {'年份': ['2010', '2011', '2012', '2013', '2014', '2015'],
		'销售额': [100, 200, 300, 400, 500, 600]}

df = pd.DataFrame(data)

现在,我们将使用 df.plot() 方法将销售额数据可视化为一条折线图:

python

import matplotlib.pyplot as plt

df.plot(x='年份', y='销售额', kind='line')
plt.show()

上述代码中,df.plot() 方法将 DataFrame 中的数据可视化为一条折线图。其中,x='年份' 和 y='销售额' 分别指定了 x 轴和 y 轴的数据列。kind='line' 参数指定了图表类型为折线图。

最后使用 plt.show() 函数显示图表。

运行上述代码,将会看到如下图表:

Pandas DataFrame 数据可视化

除了折线图,还可以使用 kind 参数指定其他类型的图表,例如:

散点图:kind='scatter'
条形图:kind='bar'
直方图:kind='hist'
箱线图:kind='box'
面积图:kind='area'

如果要可视化多列数据,可以使用 Pandas 的 .plot() 方法中的 y 参数。y 参数可以接受一个列表,其中包含要可视化的所有列名。下面是一个简单的例子:

假设我们有如下 DataFrame:

python

import pandas as pd

data = {'年份': ['2010', '2011', '2012', '2013', '2014', '2015'],
		'销售额1': [100, 200, 300, 400, 500, 600],
		'销售额2': [200, 300, 400, 500, 600, 700],
		'销售额3': [150, 250, 350, 450, 550, 650]}

df = pd.DataFrame(data)

现在,我们将使用 df.plot() 方法将三个销售额数据可视化为折线图:

python

import matplotlib.pyplot as plt

df.plot(x='年份', y=['销售额1', '销售额2', '销售额3'], kind='line')
plt.show()

上述代码中,y=['销售额1', '销售额2', '销售额3'] 参数指定了要可视化的三列销售额数据。将这三列数据作为一个列表传递给 y 参数即可。

标签:kind,df,DataFrame,python,销售额,dataframe,可视化,方法,pandas
From: https://www.cnblogs.com/FrostyForest/p/17284439.html

相关文章

  • (4.3)数组、对象及类数组对象,set的用法,正则表达式的常用方法,蓝桥杯备赛-(生成数组、数
    1.1数组、对象及类数组对象1.数组:​ 数组是有序的数据集合,其中的索引值从0开始递增,并且数组有length属性,可以获取数组内的元素个数,其中的值可以是任何的数组类型。2.对象:​ 对象是无序的是由一个或多个键值对组成的数据集合,对象没有length属性。3.伪数组(类数组对象):​ ......
  • 【C#学习】--方法
    .1静态方法.1.1特点:生命周期:自创建开始到整个应用程序结束而结束作用域:全局效率高.1.2应用:用户登录信息、系统配置信息、系统设置、SQLHelper.1.3注意事项:带有“静态”前缀的一旦数量变多就会大量占用内存,非必要情况下不要创建静态对象.1.4调用:我们在静态函数......
  • Java 获取当前或调用者类名和方法名(Thread.currentThread().getStackTrace()、new Thr
    Java获取当前或调用者类名和方法名(Thread.currentThread().getStackTrace()、newThrowable().getStackTrace())原文链接:https://blog.csdn.net/inthat/article/details/111885544文章目录一、Java获取当前类名和方法名Thread.currentThread().getStackTrace()1.关于Thr......
  • idea类/方法注释设置
    类:#if(${PACKAGE_NAME}&&${PACKAGE_NAME}!="")package${PACKAGE_NAME};#end#parse("FileHeader.java")/***${NAME}**@description:接口处理*@author:${USER}*@date:${DATE}${TIME}*/publicclass${NAME}{}方法:****$param$......
  • 解决java注解处理器生成的方法,在编译时报错“找不到符号”
    我的注解处理器,添加的其中一个方法中有一段AST代码如下:JCTree.JCFieldAccessobjectsIsNull=maker.Select(maker.Ident(names.fromString("java.util.Objects")),names.fromString("isNull"));JCTree.JCIfifExpr1=maker.If(maker.Apply(List.nil(),objectsI......
  • macOS 运行xxx.command文件提示”无法执行,因为您没有正确的访问权限“解决方法
    使用苹果mac电脑运行.command文件时,是否遇到弹出”无法执行,因为您没有正确的访问权限“的窗口?遇到这种问题怎么解决呢?这里小编为大家带来了详细的解决方法,一起来看看吧!解决方法:方法一:打开终端工具,输入以下命令:sudosh注意后面有空格然后再把.command文件直接拖入终端按回车......
  • MyBatisPlus---delete删除操作的三种方法
    一、根据id删除1234567891011@Testpublic void deleteById(){    int rows=userMapper.deleteById(1351456313578713090L);    System.out.println("删除条数:" +rows);} @Testpublic void deleteByBatchIds(){    int row......
  • CANN训练:模型推理时数据预处理方法及归一化参数计算
    摘要:在做基于AscendCL模型推理时,通常使用的有OpenCV、AIPP、DVPP这三种方式,或者是它们的混合方式,本文比较了这三种方式的特点,并以Resnet50的pytorch模型为例,结合训练营提供的sample,说明了分别是如何实现预处理的。本文分享自华为云社区《【2023·CANN训练营第一季】——模型推......
  • 使用requests库进行文件上传的多种方法。
    一、仅上传文件importrequestsurl='http://example.com/upload_file'file_path='/path/to/file'withopen(file_path,'rb')asf:files={'file':f}headers={'content-type':'multipart/form-d......
  • 加载spring配置的两个方法AnnotationConfigApplicationContext()和getRootConfigClass
    在Spring中,AnnotationConfigApplicationContext类和AbstractAnnotationConfigDispatcherServletInitializer类中的getRootConfigClasses()方法都是用来加载Spring配置类,并创建Spring容器的。因此,它们的作用是相似的,都是用来配置Spring容器的。但是,它们的使用场景和......