赞
踩
- # 导入pandas库
- import pandas as pd
-
- # 创建一个列表,其中包含数据
- data = [['A', 1], ['B', 2], ['C', 3]]
-
- # 使用pandas的DataFrame()函数将列表转换为DataFrame
- df = pd.DataFrame(data, columns=['Letter', 'Number']) # 列名
-
- # 显示创建的DataFrame
- print(df)
-
-
- Letter Number
- 0 A 1
- 1 B 2
- 2 C 3
- # 导入pandas库
- import pandas as pd
-
- # 创建一个字典对象
- data = {'Name': ['Tom', 'Nick', 'John'], 'Age': [20, 21, 19]}
-
- # 使用pandas的DataFrame()函数将字典转换为DataFrame
- df = pd.DataFrame(data)
-
- # 显示创建的DataFrame
- print(df)
-
-
- Name Age
- 0 Tom 20
- 1 Nick 21
- 2 John 19
分别是df.head()和df.tail() →默认返回前(后)5条数据。
区别df.describe()
和df.info()
df.describe()
:默认情况下,它会为数值型列提供中心趋势、离散度和形状的统计描述,包括计数、均值、标准差、最小值、下四分位数(25%)、中位数(50%)、上四分位数(75%)以及最大值。此外,你可以通过传递参数来调整df.describe()
的行为,例如include
参数可以设置为'all'来包含所有列的统计信息,或者设置为'O'来仅包含对象列的统计信息。df.info()
:主要用于提供关于DataFrame的一般信息,如列索引、数据类型、非空值数量以及内存使用情况。它不会提供数值型数据的统计摘要,而是更多地关注于数据集的整体结构和数据类型。pandas⽀持四种类型的多轴索引,它们是:
Dataframe.[ ] 此函数称为索引运算符
Dataframe.loc[ ] : 此函数⽤于标签
Dataframe.iloc[ ] : 此函数⽤于基于位置或整数的
Dataframe.ix[] : 此函数⽤于基于标签和整数的panda set_index()是⼀种将列表、序列或dataframe设置为dataframe索引的⽅法。语法:
DataFrame.set_index(keys, inplace=False)
- keys:列标签或列标签/数组列表,需要设置为索引的列
- inplace:默认为False,适当修改DataFrame(不要创建新对象)
如何重置索引 ?
Pandas Series.reset_index()函数的作⽤是:⽣成⼀个新的DataFrame或带有重置索引的Series。
如何得到⼀个数列的最⼩值、第25百分位、中值、第75位和最⼤值?
- import pandas as pd
- import numpy as np
- from numpy import percentile
- p = pd.Series(np.random.normal(14, 6, 22))
- state = np.random.RandomState(120)
- p = pd.Series(state.normal(14, 6, 22))
- print(percentile(p, q=[0, 25, 50, 75, 100]))
- Pandas支持加(
+
)、减(-
)、乘(*
)、除(/
)、取余(%
)等基本算术运算符,可以用于DataFrame和Series之间的元素级运算,以及与标量的运算。- Pandas提供了一系列内置函数,如
sum()
、mean()
、max()
、min()
等,用于对数据进行聚合计算。此外,还可以使用apply()
方法将自定义函数应用于DataFrame或Series。- 可以使用
sort_values()
方法对DataFrame或Series进行排序,根据指定的列或行进行升序或降序排列。
如果需要将函数应⽤到DataFrame中的每个数据元素,可以使⽤ apply() 函数以便将函数应⽤于给定dataframe中的每⼀⾏。
- import pandas as pd
- def add(a, b, c):
- return a + b + c
- def main():
- data = {
- 'A':[1, 2, 3],
- 'B':[4, 5, 6],
- 'C':[7, 8, 9] }
- df = pd.DataFrame(data)
- print("Original DataFrame:\n", df)
- df['add'] = df.apply(lambda row : add(row['A'],
- row['B'], row['C']), axis = 1)
-
- Original DataFrame:
- A B C
- 0 1 4 7
- 1 2 5 8
- 2 3 6 9
-
-
- A B C add
- 0 1 4 7 12
- 1 2 5 8 15
- 2 3 6 9 18
如何将新⾏追加到pandas DataFrame?
Pandas dataframe.append()函数的作⽤是:将其他dataframe的⾏追加到给定的dataframe的末尾,返回⼀个新的dataframe对象。
语法:DataFrame.append( ignore_index=False,)
参数:
- ignore_index : 如果为真,就不要使⽤索引标签
- import pandas as pd
- # 使⽤dictionary创建第⼀个Dataframe
- df1 =df =pd.DataFrame({"a":[1, 2, 3, 4],"b":[5, 6, 7, 8]})
- # 使⽤dictionary创建第⼆个Dataframe
- df2 =pd.DataFrame({"a":[1, 2, 3],"b":[5, 6, 7]})
- # 现在将df2附加到df1的末尾
- df1.append(df2)
第⼆个DataFrame的索引值保留在附加的DataFrame中,设置ignore_index = True可以避免这种情况。
“group by” 指的是涵盖下列⼀项或多项步骤的处理流程:
- 先分组,再⽤ sum()函数计算每组的汇总数据
- 多列分组后,⽣成多层索引,也可以应⽤ sum 函数
- 分组后可以使用如
sum()
、mean()
、min()
、max()
等聚合函数来计算每个组的统计值。如果想要对每个分组应用多个函数,可以使用agg()
方法,并传入一个包含多个函数名的列表,例如group_1.agg(['sum', 'mean'])
。
透视表是⼀种可以对数据动态排布并且分类汇总的表格格式,在pandas中它被称作pivot_table。
透视表是一种强大的数据分析工具,它可以快速地对大量数据进行汇总、分析和呈现。
pivot_table(data, values=None, index=None, columns=None)
- Index: 就是层次字段,要通过透视表获取什么信息就按照相应的顺序设置字段
- Values: 可以对需要的计算数据进⾏筛选
- Columns: 类似Index可以设置列层次字段,它不是⼀个必要参数,作为⼀种分割数据的可选⽅式。
- import pandas as pd
-
- # 创建示例数据
- data = {'日期': ['2022-01-01', '2022-01-01', '2022-01-02', '2022-01-02'],
- '产品': ['A', 'B', 'A', 'B'],
- '地区': ['北京', '上海', '北京', '上海'],
- '销售额': [100, 200, 150, 250]}
- df = pd.DataFrame(data)
-
- # 使用pivot_table方法创建数据透视表
- pivot_table = df.pivot_table(values='销售额', index='产品', columns='地区', aggfunc='sum')
-
- print(pivot_table)
-
-
- # 结果
- 地区 北京 上海
- 产品
- A 100 150
- B 200 250
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。