在后台回复【阅读书籍】
即可获取python相关电子书~
Hi,我是山月。
今天给大家带来一个强大的朋友:pandas。如果你有许多数据分析任务的话,那你一定不能错过它。
由于它的内容比较多,因此会分成几部分来讲解,今天只来讲解下入门教程,有兴趣的话可以多加关注哦~
官网:https://pandas.pydata.org/
如果需要 pdf版官方文档的话,可以在后台回复【 pandas文档】来获取哦~
安装:pip install pandas
导入pandas:
import pandas as pd # 一般命名为pd
查看 pandas 版本:
import pandas as pd
pd_version = pd.__version__ # 查看版本
print(pd_version) # 1.1.5
01
DataFrame和Series
DataFrame和Series是pandas非常基础也是非常重要的两个概念。
1、DataFrame
要将数据存储在表中,需要创建一个 DataFrame,它的数据是一个值为列表的字典。
字典的键用作列标题,每个列表中的值将用作 DataFrame 的列。
DataFrame 是一种二维数据结构,可以在列中存储不同类型的数据(包括字符、整数、浮点值、分类数据等)。
如:
import pandas as pd # 一般命名为pd
df = pd.DataFrame(
{
"Name": [
"Braund, Mr. Owen Harris",
"Allen, Mr. William Henry",
"Bonnell, Miss. Elizabeth",
],
"Age": [22, 35, 58],
"Sex": ["male", "male", "female"],
}
)
print(df)
'''
Name Age Sex
0 Braund, Mr. Owen Harris 22 male
1 Allen, Mr. William Henry 35 male
2 Bonnell, Miss. Elizabeth 58 female
'''
2、Series
DataFrame 中的每一列都是一个Series。因此Pandas里选择DataFrame 的单列时,结果是Series。
如果你想要选择单列,可以在方括号 [] 里添加要选择列的列标签。
print(df["Age"])
'''
0 22
1 35
2 58
Name: Age, dtype: int64
'''
如果想从头开始创建Series:
import pandas as pd # 一般命名为pd
ages = pd.Series([22, 35, 58], name="Age")
print(ages)
'''
0 22
1 35
2 58
Name: Age, dtype: int64
'''
Series没有列标签,因为它只是 DataFrame 的一列,但Series有行标签。
3、使用 DataFrame 或 Series
pandas 提供了很多功能,每个功能都是可以应用于 DataFrame 或 Series 的方法(由于方法是函数,所以不要忘记使用括号 )。
其中max() 方法可以求出一列数据里的最大值。
比如在 DataFrame 上求出最大年龄:
import pandas as pd # 一般命名为pd
df = pd.DataFrame(
{
"Name": [
"Braund, Mr. Owen Harris",
"Allen, Mr. William Henry",
"Bonnell, Miss. Elizabeth",
],
"Age": [22, 35, 58],
"Sex": ["male", "male", "female"],
}
)
print(df["Age"].max()) # 58
在Series上求出最大年龄:
import pandas as pd # 一般命名为pd
ages = pd.Series([22, 35, 58], name="Age")
print(ages.max()) #58
02
读取和写入表格数据
1、读取
pandas 提供了 read_csv() 函数来将存储为 csv 文件的数据读取到 pandas DataFrame 中。
pandas 支持许多不同的文件格式或开箱即用的数据源(csv、excel、sql、json、parquet 等),每一个都带有前缀 read_*。
如:
titanic = pd.read_csv("titanic.csv")
titanic = pd.read_excel("titanic.xlsx", sheet_name="passengers")
要查看 DataFrame 的前 N 行,可以使用 head() 方法,并将所需的行数(如 2)作为参数:
titanic.head(2)
可以通过请求dtypes 属性来检查 pandas 如何解释每列的数据类型:
titanic.dtypes
数据类型有整数(int64)、浮点数(float64)和字符串(object)。
2、存储
to_* 方法可以用于存储数据。
to_excel() 方法将数据存储为 excel 文件:
titanic.to_excel("titanic.xlsx", sheet_name="passengers", index=False) #index=False 行索引标签不会保存在电子表格中
方法 info() 提供 DataFrame 的技术信息,可以让我们更详细地解释输出:
titanic.info()
3、实例
`go
import pandas as pd # 一般命名为pd
df = pd.DataFrame(
{
“Name”: [
“Braund, Mr. Owen Harris”,
“Allen, Mr. William Henry”,
“Bonnell, Miss. Elizabeth”,
],
“Age”: [22, 35, 58],
“Sex”: [“male”, “male”, “female”],
}
)
df.to_excel(“titanic.xlsx”, sheet_name=”passengers”, index=False) #保存成excel
titanic = pd.read_excel(“titanic.xlsx”, sheet_name=”passengers”) # 读取excel
print(titanic.head(2)) #查看表格前两行数据
print(‘——-‘)
print(titanic.dtypes) #查看每列的数据类型
print(‘——-‘)
print(titanic.info()) #查看DataFrame 的技术信息
”’
Name Age Sex
0 Braund, Mr. Owen Harris 22 male
1 Allen, Mr. William Henry 35 male
RangeIndex: 3 entries, 0 to 2
Data columns (total 3 columns):
# Column Non-Null Count Dtype
Original: https://blog.csdn.net/qq_45464895/article/details/123836334
Author: 是山月呀
Title: Python自动化办公:pandas入门教程
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/675455/
转载文章受原作者版权保护。转载请注明原作者出处!