Series是一种类似于一维数组的对象,由一组数据和一组与之相关的索引组成。它可以存储任何数据类型,包括整数、浮点数、字符串等。
# 导入pandas库
import pandas as pd
# 创建一个简单的Series
data = pd.Series([10, 20, 30, 40, 50], index=['a', 'b', 'c', 'd', 'e'])
print('Series对象:')
print(data)
# 访问Series的值和索引
print('\nSeries的值:')
print(data.values)
print('\nSeries的索引:')
print(data.index)
在上面的示例中,我们创建了一个Series对象,其中包含了数据和自定义的索引。可以通过data.values获取Series的值,通过data.index获取索引。
DataFrame是Pandas中最常用的数据结构,类似于电子表格或SQL表格。它是一个二维的、带有行索引和列索引的表格。
# 创建DataFrame
data = {
'姓名': ['张三', '李四', '王五'],
'年龄': [25, 30, 28],
'城市': ['北京', '上海', '广州']
}
df = pd.DataFrame(data)
print('创建的DataFrame对象:')
print(df)
在这个示例中,我们使用字典创建了一个简单的DataFrame,其中包含了姓名、年龄和城市三列数据。
# 访问DataFrame中的列
print('访问年龄列:')
print(df['年龄'])
# 访问DataFrame中的行(使用loc和iloc)
print('\n使用loc访问行:')
print(df.loc[1])
print('\n使用iloc访问行:')
print(df.iloc[0])
在上面的示例中,使用df['年龄']可以访问DataFrame中的一列数据。使用loc可以根据标签访问行,使用iloc可以根据位置访问行。
# 修改DataFrame中的值
df.loc[0, '年龄'] = 26
print('修改后的DataFrame:')
print(df)
# 添加新列
df['职业'] = ['工程师', '教师', '医生']
print('\n添加新列后的DataFrame:')
print(df)
在这个示例中,我们修改了第一行的年龄值,并添加了一列新的数据列职业。
Pandas提供了多种方法从不同格式的文件中导入数据,如CSV、Excel等。常用方法是pd.read_csv()和pd.read_excel()。
# 示例:从CSV文件导入数据
# 假设有一个名为'data.csv'的文件
try:
df_from_csv = pd.read_csv('data.csv')
print('从CSV导入的DataFrame:')
print(df_from_csv.head())
except FileNotFoundError:
print('无法找到data.csv文件,请确保文件存在。')
在上面的示例中,pd.read_csv()用于从CSV文件中导入数据。使用head()方法可以查看导入数据的前几行。
Pandas提供了多种方法将DataFrame保存到不同格式的文件中,如CSV、Excel等。常用方法是to_csv()和to_excel()。
# 示例:将DataFrame保存到CSV文件
df.to_csv('output.csv', index=False)
print('DataFrame已保存到output.csv文件中')
在上面的示例中,df.to_csv()方法用于将DataFrame保存到一个CSV文件中。参数index=False用于指定不要将行索引写入文件。
pd.read_csv()),并显示前5行数据。to_excel()。# 练习 1: 创建Series
temps = pd.Series([30, 32, 28, 25, 27], index=['北京', '上海', '广州', '深圳', '杭州'])
print('城市温度Series:')
print(temps)
# 练习 2: 创建和修改DataFrame
product_data = {
'产品名称': ['手机', '笔记本', '耳机'],
'价格': [2000, 5000, 300],
'库存数量': [50, 20, 100]
}
products_df = pd.DataFrame(product_data)
print('\n初始产品DataFrame:')
print(products_df)
# 修改产品价格
products_df.loc[0, '价格'] = 2200
print('\n修改后的产品DataFrame:')
print(products_df)
# 练习 3 和 4 需在本地环境中导入数据并保存