从Excel到Python数据分析进阶指南1

preview
需积分: 0 15 下载量 164 浏览量 更新于2022-08-04 收藏 184KB PDF 举报
在数据分析领域,从Excel过渡到Python可以提供更强大的工具和灵活性。以下是一些关键的知识点,涵盖了从导入数据到数据清洗、预处理、提取、筛选以及汇总的全过程。 生成数据表是数据分析的第一步。在Python中,我们可以使用pandas库的DataFrame对象来创建数据表。例如,通过`pd.DataFrame(pd.read_csv('name.csv', header=1))`,你可以读取CSV文件并将其转换为DataFrame。 数据表检查是确保数据质量的重要环节。`df.shape`返回数据表的行数和列数,这对于理解数据的规模非常有用。`df.info()`则提供了数据表的整体信息,包括每列的名称、数据类型以及是否有缺失值。`df.dtypes`用于查看所有列的数据类型,而`df['B'].dtype`则专注于特定列。`df.isnull()`用于检测空值,返回一个布尔型的DataFrame,`df['city'].unique()`则可以查看某一列的唯一值。 数据清洗是数据分析中的核心步骤。`df.dropna(how='any')`可以删除包含任何空值的行,`df.fillna(value=0)`用0填充空值,`df['price'].fillna(df['price'].mean())`则是用价格列的平均值填充NA。字符串操作如`df['city'].map(str.strip)`用于去除字符空格,`df['city'].str.lower()`将所有字母转为小写,`df['price'].astype('int')`则用于将数据类型转换为整数。`df.rename()`用于更改列名,`df['city'].drop_duplicates()`删除重复值,`df['city'].replace('sh', 'shanghai')`则用于数据替换。 数据预处理阶段,`pd.merge()`用于合并数据表,有inner、outer、left和right四种连接方式。`df_inner.set_index('id')`设置索引列,`df_inner.reset_index()`重置索引,`df_inner.sort_values(by=['age'])`和`df_inner.sort_index()`分别按值和索引排序。`np.where()`函数用于根据条件赋值,例如根据价格划分高低等级。 数据提取时,`Loc`、`iloc`和`ix`是pandas中用于选取数据的关键方法。`Loc`按索引标签选择行,`iloc`按位置选择,而`ix`两者皆可。`isin()`函数则用于按指定条件提取数据,例如找出特定城市的数据。 数据筛选利用逻辑运算符,如`&`表示与,`|`表示或,`!=`表示不等于,可以构建复杂的筛选条件。 数据汇总通常涉及`groupby()`函数,它可以按列分组进行计数或求和等操作。例如,`df_inner.groupby('city').count()`统计每个城市的行数,`df_inner.groupby('city')['id'].count()`则计算每个城市ID的数量。 这些基本操作构成了Python数据分析的基础,通过熟练掌握它们,可以从Excel逐步过渡到更高效、更灵活的数据分析环境。