首页 > 其他分享 >Pandas 使用教程 Series、DataFrame

Pandas 使用教程 Series、DataFrame

时间:2023-08-25 15:34:48浏览次数:46  
标签:Series DataFrame 索引 pd print data Pandas

目录

Pandas 一个强大的分析结构化数据的工具集,基础是 Numpy(提供高性能的矩阵运算)
Pandas 可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据。
Pandas 可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗和数据加工特征。
Pandas 广泛应用在学术、金融、统计学等各个数据分析领域。

Pandas 的主要数据结构是 Series (一维数据)与 DataFrame(二维数据)

  • Series 是一种类似于一维数组的对象,它由一组数据(各种Numpy数据类型)以及一组与之相关的数据标签(即索引)组成
  • DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。

pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple

Series (一维数据)

Pandas Series 类似表格中的一个列(column),类似于一维数组,可以保存任何数据类型。
Series 由索引(index)和列组成,函数如下:
pandas.Series( data, index, dtype, name, copy)
参数说明:

  • data:一组数据(ndarray 类型)。
  • index:数据索引标签,如果不指定,默认从 0 开始。
  • dtype:数据类型,默认会自己判断。
  • name:设置名称。
  • copy:拷贝数据,默认为 False。
import pandas as pd

a = [1, 2, 3]
myvar = pd.Series(a)
print(myvar)
print(myvar[1]) # 2

image
如果没有指定索引,索引值就从 0 开始,

指定索引值

如下实例:

import pandas as pd

a = ["Google", "Runoob", "Wiki"]
myvar = pd.Series(a, index = ["x", "y", "z"])

print(myvar)
print(myvar["y"])  # Runoob

image

使用 key/value 对象,创建对象

import pandas as pd

sites = {1: "Google", 2: "Runoob", 3: "Wiki"}
myvar = pd.Series(sites)

print(myvar)

image

设置 Series 名称参数

import pandas as pd

sites = {1: "Google", 2: "Runoob", 3: "Wiki"}
myvar = pd.Series(sites, index = [1, 2], name="RUNOOB-Series-TEST" )

print(myvar)

image

DataFrame(二维数据)

DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。
image
image
DataFrame 构造方法如下:
pandas.DataFrame( data, index, columns, dtype, copy)
参数说明:

  • data:一组数据(ndarray、series, map, lists, dict 等类型)。
  • index:索引值,或者可以称为行标签。
  • columns:列标签,默认为 RangeIndex (0, 1, 2, …, n) 。
  • dtype:数据类型。
  • copy:拷贝数据,默认为 False。

Pandas DataFrame 是一个二维的数组结构,类似二维数组。

import pandas as pd

data = [['Google',10],['Runoob',12],['Wiki',13]]
# data = {'Site':['Google', 'Runoob', 'Wiki'], 'Age':[10, 12, 13]} # 也可以这样写
df = pd.DataFrame(data,columns=['Site','Age'],dtype=float)

print(df)

image
DataFrame 数据类型一个表格,包含 rows(行) 和 columns(列):
image

使用字典(key/value)创建

import pandas as pd

data = [{'a': 1, 'b': 2},{'a': 5, 'b': 10, 'c': 20}]
df = pd.DataFrame(data)

print (df)

输出

   a   b     c
0  1   2   NaN
1  5  10  20.0

loc 属性返回指定行的数据

import pandas as pd

data = {
  "calories": [420, 380, 390],
  "duration": [50, 40, 45]
}

# 数据载入到 DataFrame 对象
df = pd.DataFrame(data)

# 返回第一行
# calories   420
# duration     50
print(df.loc[0])

# 返回第二行
# calories    380
# duration     40
print(df.loc[1])

# 返回第一行和第三行
#   calories  duration
#0       420        50
#2       390        45

print(df.loc[[0, 2]])

标签:Series,DataFrame,索引,pd,print,data,Pandas
From: https://www.cnblogs.com/vipsoft/p/17656714.html

相关文章

  • 通过pandas读取excel的数据,但是读取的结果显示后面四位变了?
    大家好,我是皮皮。一、前言前几天在Python最强王者群【wen】问了一个Pandas数据处理的问题,一起来看看吧。请教:通过pandas读取exlce的数据,其中,A列的数据为账号数字,原数据为6226093585801315,但是读取的结果显示6226093585800672,后面四位变了。df=pd.read_excel('销售数据.xlsx').......
  • # yyds干货盘点 # 通过pandas读取excel的数据,但是读取的结果显示后面四位变了?
    大家好,我是皮皮。一、前言前几天在Python最强王者群【wen】问了一个Pandas数据处理的问题,一起来看看吧。请教:通过pandas读取exlce的数据,其中,A列的数据为账号数字,原数据为6226093585801315,但是读取的结果显示6226093585800672,后面四位变了。df=pd.read_excel('销售数据.xlsx').conb......
  • 【pandas小技巧】--DataFrame的显示样式
    上一篇介绍了DataFrame的显示参数,主要是对DataFrame中值进行调整。本篇介绍DataFrame的显示样式的调整,显示样式主要是对表格本身的调整,比如颜色,通过颜色可以突出显示重要的值,观察数据时可以更加高效的获取主要信息。下面介绍一些针对单个数据和批量数据的样式调整方式,让DataFram......
  • pandas 保存数据到数据库,
    https://www.geeksforgeeks.org/how-to-insert-a-pandas-dataframe-to-an-existing-postgresql-table/#https://stackoverflow.com/questions/62688256/sqlalchemy-exc-nosuchmoduleerror-cant-load-plugin-sqlalchemy-dialectspostgreimportpsycopg2importpandasaspd......
  • Pandas处理excel
    基本使用pandas是一个用于数据处理和分析的python库,提供了许多数据结构,其中最常用的是DataFrame和Series。创建DataFrame:可以使用字典或二维数组来创建Forexample: importpandasaspd data={'A':[1,2,3],'B':[4,5,6]} df=pd.DataFrame(data)读取和写入......
  • pd.read_csv pandas.errors.ParserError: Error tokenizing data. C error: Expected
    df1=pd.read_csv(path1,encoding="utf-8",chunksize=50000,error_bad_lines=False)尽管提示:Warning(fromwarningsmodule):File"D:\Python37\lib\idlelib\run.py",line550exec(code,self.locals)FutureWarning:Theerror_bad_linesargu......
  • 【Python】pandas操作, 取最大值, 最小值, 平均值, 生成 空值, 多个 series合并, 替换
    1.取最大值,最小值,平均值df.max()df.iloc[:,1:].max()df.min()df.mean()#输出indexvalue2.生成空值,带index的seriespd.Series(index=['1','2','3'],dtype='object')"""1NaN2NaN3NaNdtype:objec......
  • 盘点一个pandas读取excel数据并处理的小需求
    大家好,我是皮皮。一、前言前几天在Python最强王者群【wen】问了一个pandas数据处理的问题,一起来看看吧。通过pandas读取excel数据,其中两列是交易的备注信息,对A列数据筛选并把结果输出到C列。如果A列中有['吉利','奔驰','福特']三个字段,C列标记为‘汽车品牌’,如果A列有['NIKE','......
  • Echarts series里面多条也就是多个饼图,怎么设置,让所有饼图都显示
    在Echarts中,饼图(pie)类型的series是没有坐标系的,它是以圆心为基准绘制的。因此,你无需设置坐标系来让多个饼图都显示。但是,如果你想要在一个图表中显示多个饼图,你可以通过使用多个series来实现。每个series代表一个饼图,并且可以通过不同的半径、位置、大小等参数来区分它们。下面是......
  • 【pandas小技巧】--DataFrame的显示参数
    我们在jupyternotebook中使用pandas显示DataFrame的数据时,由于屏幕大小,或者数据量大小的原因,常常会觉得显示出来的表格不是特别符合预期。这时,就需要调整pandas显示DataFrame的方式。pandas为我们提供了很多调整显示方式的参数,具体参见文末附录中的链接。本篇介绍几个我经常用到......