📜  熊猫探索数据框 - Python (1)

📅  最后修改于: 2023-12-03 15:11:10.280000             🧑  作者: Mango

熊猫探索数据框 - Python

熊猫(Pandas)是Python中一个广泛使用的数据分析库。它提供一种类似于Excel表格的数据结构,称为数据框(DataFrame),用于处理和分析表格数据。熊猫数据框是由行和列组成的二维表格,可以使用多种方式进行数据操作和转换。

安装

使用以下命令安装熊猫库:

pip install pandas
创建数据框

可以使用多种方式创建熊猫数据框,如从CSV文件、Excel文件、SQL数据库等导入数据。下面是一些常用的创建数据框的方法:

使用字典创建数据框
import pandas as pd

data = {'姓名': ['张三', '李四', '王五', '赵六', '钱七'],
        '年龄': [23, 30, 45, 35, 18],
        '性别': ['男', '男', '女', '男', '女']}
df = pd.DataFrame(data)
print(df)

输出结果:

| | 姓名 | 年龄 | 性别 | | :- | :- | :- | :- | | 0 | 张三 | 23 | 男 | | 1 | 李四 | 30 | 男 | | 2 | 王五 | 45 | 女 | | 3 | 赵六 | 35 | 男 | | 4 | 钱七 | 18 | 女 |

使用列表创建数据框
import pandas as pd

data = [['张三', 23, '男'],
        ['李四', 30, '男'],
        ['王五', 45, '女'],
        ['赵六', 35, '男'],
        ['钱七', 18, '女']]
df = pd.DataFrame(data, columns=['姓名', '年龄', '性别'])
print(df)

输出结果:

| | 姓名 | 年龄 | 性别 | | :- | :- | :- | :- | | 0 | 张三 | 23 | 男 | | 1 | 李四 | 30 | 男 | | 2 | 王五 | 45 | 女 | | 3 | 赵六 | 35 | 男 | | 4 | 钱七 | 18 | 女 |

数据操作

熊猫数据框提供了多种数据操作方法,如数据选择、数据插入、数据删除、数据合并、数据分组等。

数据选择

可以使用loc和iloc方法选择数据:

import pandas as pd

data = [['张三', 23, '男'],
        ['李四', 30, '男'],
        ['王五', 45, '女'],
        ['赵六', 35, '男'],
        ['钱七', 18, '女']]
df = pd.DataFrame(data, columns=['姓名', '年龄', '性别'])
print(df.loc[1:3, ['姓名', '性别']])

输出结果:

| | 姓名 | 性别 | | :- | :- | :- | | 1 | 李四 | 男 | | 2 | 王五 | 女 | | 3 | 赵六 | 男 |

数据插入

可以使用insert方法在数据框中插入一列数据:

import pandas as pd

data = [['张三', 23, '男'],
        ['李四', 30, '男'],
        ['王五', 45, '女'],
        ['赵六', 35, '男'],
        ['钱七', 18, '女']]
df = pd.DataFrame(data, columns=['姓名', '年龄', '性别'])
df.insert(2, '职业', ['教师', '律师', '医生', '程序员', '学生'])
print(df)

输出结果:

| | 姓名 | 年龄 | 职业 | 性别 | | :- | :- | :- | :- | :- | | 0 | 张三 | 23 | 教师 | 男 | | 1 | 李四 | 30 | 律师 | 男 | | 2 | 王五 | 45 | 医生 | 女 | | 3 | 赵六 | 35 | 程序员 | 男 | | 4 | 钱七 | 18 | 学生 | 女 |

数据删除

可以使用drop方法删除指定行或列的数据:

import pandas as pd

data = [['张三', 23, '男'],
        ['李四', 30, '男'],
        ['王五', 45, '女'],
        ['赵六', 35, '男'],
        ['钱七', 18, '女']]
df = pd.DataFrame(data, columns=['姓名', '年龄', '性别'])
df = df.drop([1, 3])
print(df)

输出结果:

| | 姓名 | 年龄 | 性别 | | :- | :- | :- | :- | | 0 | 张三 | 23 | 男 | | 2 | 王五 | 45 | 女 | | 4 | 钱七 | 18 | 女 |

数据合并

可以使用merge方法合并多个数据框的数据:

import pandas as pd

data1 = [['张三', 23, '男'],
         ['李四', 30, '男'],
         ['王五', 45, '女']]
df1 = pd.DataFrame(data1, columns=['姓名', '年龄', '性别'])

data2 = [['张三', '教师'],
         ['李四', '律师'],
         ['王五', '医生'],
         ['赵六', '程序员']]
df2 = pd.DataFrame(data2, columns=['姓名', '职业'])

df = pd.merge(df1, df2, on='姓名')
print(df)

输出结果:

| | 姓名 | 年龄 | 性别 | 职业 | | :- | :- | :- | :- | :- | | 0 | 张三 | 23 | 男 | 教师 | | 1 | 李四 | 30 | 男 | 律师 | | 2 | 王五 | 45 | 女 | 医生 |

数据分组

可以使用groupby方法对数据进行分组:

import pandas as pd

data = [['张三', 23, '男', '教师'],
        ['李四', 30, '男', '律师'],
        ['王五', 45, '女', '医生'],
        ['赵六', 35, '男', '程序员'],
        ['钱七', 18, '女', '学生']]
df = pd.DataFrame(data, columns=['姓名', '年龄', '性别', '职业'])
print(df.groupby('性别').mean())

输出结果:

| | 年龄 | | :- | :- | | 性别 | | | 女 | 31.5 | | 男 | 29.5 |

总结

熊猫数据框是一个非常强大和灵活的数据分析工具,可以用于处理和分析各种类型的数据。在熟练掌握熊猫数据框的使用方法之后,可以轻松地进行各种复杂的数据操作和分析,从而为数据分析和决策提供更有力的支持。