Pandas是一个开源的Python数据分析库,由Wes McKinney在2008年开辟,现在由PyData团队保护。Pandas以其富强的数据处理跟分析才能,在数据科学跟数据分析范畴掉掉落了广泛利用。它构建在NumPy跟Matplotlib之上,与Python的其他科学打算库兼容,构成数据分析的三剑客。Pandas的核心数据构造包含Series跟DataFrame,为用户供给了高效的数据操纵跟分析东西。
Series是一维数组,可能存储任何数据范例,每个元素都有一个独一的标签(索引)。它类似于Python中的列表或NumPy数组,但供给了更丰富的索引跟操纵功能。
import pandas as pd
# 创建一个Series
s = pd.Series([1, 2, 3, 4, 5], index=['a', 'b', 'c', 'd', 'e'])
print(s)
DataFrame是二维表格型数据构造,可能懂得为多个Series的凑集。每个列有本人的标签,行也有响应的索引。它是Pandas中最常用的数据构造。
import pandas as pd
# 创建一个DataFrame
data = {
'Name': ['Tom', 'Nick', 'John', 'Alice'],
'Age': [20, 21, 19, 18],
'City': ['New York', 'London', 'Toronto', 'Sydney']
}
df = pd.DataFrame(data)
print(df)
Pandas支撑从多种格局(如CSV、Excel、SQL数据库)读取数据,并能将处理后的数据保存到这些格局。
# 读取CSV文件
df = pd.read_csv('data.csv')
# 保存DataFrame到CSV文件
df.to_csv('output.csv', index=False)
Pandas供给了处理缺掉值的东西,如填充NaN值或删除含出缺掉值的行或列。它还支撑数据范例转换、排序、去重等功能。
# 处理缺掉值
df.fillna(0, inplace=True)
# 删除含出缺掉值的行
df.dropna(inplace=True)
# 数据范例转换
df['Age'] = df['Age'].astype(int)
# 排序
df.sort_values(by='Age', inplace=True)
# 去重
df.drop_duplicates(inplace=True)
Pandas内置了对日期跟时光的处理,可能便利地停止时光序列数据的切片、重采样跟打算频率转换。
import pandas as pd
# 创建时光序列数据
ts = pd.Series([1, 2, 3, 4, 5], index=pd.date_range(start='1/1/2020', periods=5, freq='D'))
# 时光序列数据切片
ts['2020-01-01':'2020-01-03']
# 时光序列数据重采样
ts.resample('M').sum()
# 打算频率转换
ts.freq_convert('H', method='ffill')
经由过程groupby()函数,可能基于一个或多个列对数据停止分组,并对分组后的数据履行聚合操纵(如求跟、均匀值、计数等)。
# 分组与聚合
df.groupby('City')['Age'].mean()
利用pivot_table()函数,可能创建透视表跟穿插表,对数据停止多维度分析。
# 创建透视表
pivot_table = df.pivot_table(values='Age', index='City', columns='Name')
# 创建穿插表
cross_table = df.crosstab(index='City', columns='Name')
Pandas是一个功能富强的数据分析库,它可能帮助用户轻松地停止数据清洗、预处理、统计分析、时光序列分析等操纵。经由过程进修Pandas,用户可能愈加高效地停止数据分析任务。