您当前的位置:首页 > 计算机 > 编程开发 > Python

Python使用pandas读取Excel文件数据和预处理小案例

时间:12-27来源:作者:点击数:

假设有Excel文件data.xlsx,其中内容为

现在需要将这个Excel文件中的数据读入pandas,并且在后续的处理中不关心ID列,还需要把sex列的female替换为1,把sex列的male替换为0。本文演示有关的几个操作。

(1)导入pandas模块

>>> import pandas as pd

(2)把Excel文件中的数据读入pandas

>>> df = pd.read_excel('data.xlsx')

>>> df

         ID  age  height     sex  weight

张三   1   39     181  female      85

李四   2   40     180    male      80

王五   3   38     178  female      78

赵六   4   59     170    male      66

(3)删除ID列

可以得到新的DataFrame:

>>> df.drop('ID', axis=1)

         age  height     sex  weight

张三   39     181  female      85

李四   40     180    male      80

王五   38     178  female      78

赵六   59     170    male      66

也可以直接在原DataFrame上原地删除:

>>> df.drop('ID', axis=1, inplace=True)

>>> df

         age  height     sex  weight

张三   39     181  female      85

李四   40     180    male      80

王五   38     178  female      78

赵六   59     170    male      66

(4)替换sex列

方法一:使用replace()方法替换sex列,得到新的DataFrame,如果指定参数inplace=True,则可以原地替换。

>>> df.replace({'female':1, 'male':0})

         age  height  sex  weight

张三   39     181    1      85

李四   40     180    0      80

王五   38     178    1      78

赵六   59     170    0      66

方法二:使用map()方法+lambda表达式,原地替换。

>>> df1 = df[:]

>>> df1['sex'] = df1['sex'].map(lambda x:1 if x=='female' else 0)

>>> df1

         age  height  sex  weight

张三   39     181    1      85

李四   40     180    0      80

王五   38     178    1      78

赵六   59     170    0      66

方法三:使用map()方法+字典,原地替换。

>>> df1 = df[:]

>>> df1['sex'] = df1['sex'].map({'female':1, 'male':0})

>>> df1

         age  height  sex  weight

张三   39     181    1      85

李四   40     180    0      80

王五   38     178    1      78

赵六   59     170    0      66

方法四:使用loc类,原地替换。

>>> df1 = df[:]

>>> df1.loc[df['sex']=='female', 'sex'] = 1

>>> df1.loc[df['sex']=='male', 'sex'] = 0

>>> df1

         age  height sex  weight

张三   39     181   1      85

李四   40     180   0      80

王五   38     178   1      78

赵六   59     170   0      66

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门