2886. 改变数据类型

DataFrame students
+-------------+--------+
| Column Name | Type |
+-------------+--------+
| student_id | int |
| name | object |
| age | int |
| grade | float |
+-------------+--------+
编写一个解决方案来纠正以下错误:

grade 列被存储为浮点数,将它转换为整数。

返回结果格式如下示例所示。

示例 1:

输入:
DataFrame students:
+------------+------+-----+-------+
| student_id | name | age | grade |
+------------+------+-----+-------+
| 1 | Ava | 6 | 73.0 |
| 2 | Kate | 15 | 87.0 |
+------------+------+-----+-------+
输出:
+------------+------+-----+-------+
| student_id | name | age | grade |
+------------+------+-----+-------+
| 1 | Ava | 6 | 73 |
| 2 | Kate | 15 | 87 |
+------------+------+-----+-------+
解释:
grade 列的数据类型已转换为整数。
import pandas as pd


def changeDatatype(students: pd.DataFrame) -> pd.DataFrame:
    return students.astype(dtype={'grade': int}, copy=True, errors='raise')
# DataFrame.astype(dtype, copy=True, errors='raise')
#   dtype: 它是一种数据类型,或列名->数据类型的字典。
#   copy: 默认情况下,astype 总是返回新分配的对象。如果 copy 设置为 False,则只有在旧对象无法强制转换为所需类型的情况下才会创建新对象。
#   errors: 控制对提供的数据类型的无效数据引发异常。默认设置为 raise,表示会引发异常。

 

 
posted on 2024-05-31 18:41  XiSoil  阅读(2)  评论(0编辑  收藏  举报