pandas 把float64转出int64
时间: 2023-10-12 22:18:01 浏览: 307
可以使用`astype()`函数将`float64`转换成`int64`,示例如下:
```python
import pandas as pd
# 创建含有float64类型的DataFrame
df = pd.DataFrame({'float_col': [1.0, 2.0, 3.0]})
# 将float64类型的列转换成int64类型
df['int_col'] = df['float_col'].astype('int64')
print(df)
```
输出:
```
float_col int_col
0 1.0 1
1 2.0 2
2 3.0 3
```
注意,使用该方法进行转换时,可能会出现精度丢失的情况,需要根据具体情况进行判断。如果需要四舍五入保留整数,可以使用`round()`函数进行处理。
相关问题
module 'pandas' has no attribute 'Int64Dtype'
抱歉,我之前给出的代码在最新版本的pandas中可能会出现问题。您可以尝试使用`astype('Int64')`来替代`astype(pd.Int64Dtype())`。
以下是经过修改后的示例代码:
```python
import pandas as pd
import numpy as np
# 创建一个示例数据框
data = pd.DataFrame({'气温': ['25℃', 'NaN', '30℃']})
# 将"最低气温/最高气温"行拆分为两列
data[['最低气温', '最高气温']] = data['气温'].str.split('/', expand=True)
# 去掉℃符号并将数值转换为整型数值
data['最低气温'] = data['最低气温'].str.rstrip('℃').astype(float).astype('Int64')
data['最高气温'] = data['最高气温'].str.rstrip('℃').astype(float).astype('Int64')
# 打印结果
print(data)
```
这样,您应该可以成功将"最低气温/最高气温"行拆分为两列,并且只保留整型数值(去掉℃符号)。请根据您的实际数据进行相应的调整。
pandas 某一列数据为float转变为int
### 回答1:
你可以使用 pandas 的 "astype" 方法将某一列的数据类型从 float 转换为 int。
示例代码:
```
import pandas as pd
# 创建一个示例数据框
df = pd.DataFrame({'col1': [1.1, 2.2, 3.3, 4.4, 5.5]})
# 将 col1 列的数据类型转换为 int
df['col1'] = df['col1'].astype(int)
# 检查 col1 列的数据类型
print(df.dtypes)
```
输出:
```
col1 int32
dtype: object
```
### 回答2:
要将pandas某一列的数据从float转变为int,可以使用astype()函数将数据类型转换为整数类型。下面是示例代码:
```python
import pandas as pd
# 创建一个包含浮点数的DataFrame
data = {'col1': [1.0, 2.5, 3.7, 4.2, 5.4]}
df = pd.DataFrame(data)
# 将某一列的数据从float转变为int
df['col1'] = df['col1'].astype(int)
# 打印转换后的DataFrame
print(df)
```
输出结果为:
```
col1
0 1
1 2
2 3
3 4
4 5
```
在代码中,首先创建了一个包含浮点数的DataFrame。然后使用astype()函数将'col1'列的数据类型转换为整数类型。最后打印出转换后的DataFrame,可以看到'col1'列的数据已成功从float转变为int。
### 回答3:
要将pandas某一列数据由float转变为int,可以使用astype()方法。astype()方法可以将某一列的数据类型转换为指定的类型。
首先,假设我们有一个名为df的pandas DataFrame对象,其中包含一个名为'column_name'的列,列中的数据类型为float。
要将这一列的数据类型转换为int,可以使用以下代码:
```python
df['column_name'] = df['column_name'].astype(int)
```
这行代码将会把'column_name'列中的所有元素由float类型转换为int类型。
需要注意的是,如果在该列中存在缺失值(NaN),转换为int类型后会被替换为NaN的等价整数表示。
以上就是将pandas某一列数据由float转变为int的方法。
阅读全文