python - 如何在pandas数据框中的 `convert_objects`中产生异常

标签 python pandas dataframe

这是我的数据集的 dtypesdf.dtypes

customer_id                              int64
device_id                                object
...
email                                    object
email_counts                             object
...
white_collar_count                       object
dtype: object

我正在将所有内容转换为数字 df = df.convert_objects(convert_numeric=True) 然后 df.dtypes 是

customer_id                              int64
device_id                                float64
...
email                                    float64
email_counts                             float64
...
white_collar_count                       float64
dtype: object

我想对电子邮件device_id进行异常(exception)处理,因此df.dtypes

customer_id                              int64
device_id                                object
...
email                                    object
email_counts                             float64
...
white_collar_count                       float64
dtype: object

最佳答案

使用difference用于过滤列表中的列:

feature_exist = pd.DataFrame({'A':list('abcdef'),
                   'B':[4,5,4,5,5,4],
                   'C':[7,8,9,4,2,3],
                   'D':[1,3,5,7,1,0],
                   'email':[5,3,6,9,2,4],
                   'F':list('aaabbb')}).astype(str)

print (feature_exist)
   A  B  C  D email  F
0  a  4  7  1     5  a
1  b  5  8  3     3  a
2  c  4  9  5     6  a
3  d  5  4  7     9  b
4  e  5  2  1     2  b
5  f  4  3  0     4  b

cols = feature_exist.columns.difference(['email'])
feature_exist[cols] = feature_exist[cols].convert_objects(convert_numeric=True)

print (feature_exist.dtypes)
A        object
B         int64
C         int64
D         int64
email    object
F        object
dtype: object

关于python - 如何在pandas数据框中的 `convert_objects`中产生异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50464684/

相关文章:

python - 如何将一个数据框中的列添加到另一个数据框中?

python - Python如何打印每一行处理代码?

python - unicode解码的问题

python - 在 Pandas 中,根据不同模式选择多列的惯用方式是什么?

python-3.x - 如何比较不同数据框 Pandas 的相同 id 的不同值

python - 如何根据数据框的 NAN 百分比删除列?

python - 在 pandas 数据框中重复行

python - 打开并显示从本地文件夹中选择的图像

python - RuntimeError : OperationalError: (2003, 无法连接到 'IPaddress of the instance' 上的 MySQL 服务器

python - 过滤数据集中的多项分配