Uso de tipo/dtype/astype en Python

Hay tres funciones y atributos relacionados con los tipos de datos en Python: type/dtype/astype.

nombre describir
tipo() Devuelve el tipo de datos del parámetro.
tipo de d Devuelve el tipo de datos de los elementos de la matriz.
tipo() Convertir tipos de datos

1.type() se usa para obtener el tipo de datos

#type用于获取数据类型
import numpy as np
a=[1,2,3]
print(type(a))
#>>><class 'list'>
b=np.array(a)
print(type(b))
#>>><class 'numpy.ndarray'>

2.dtype() se usa para obtener el tipo de elementos en la matriz

#dtype用于获取数组中元素的类型
print(b.dtype)
#>>>int64

x,y,z=1,2,3
c=np.array([x,y,z])
print(c.dtype)
#>>>int64

d=np.array([1+2j,2+3j,3+4j])
print(d.dtype)
#>>>complex128

3.astype() para modificar el tipo de datos

#astype修改数据类型
e=np.linspace(1,5,20)
print(e)
#>>>
'''
[1.         1.21052632 1.42105263 1.63157895 1.84210526 2.05263158
 2.26315789 2.47368421 2.68421053 2.89473684 3.10526316 3.31578947
 3.52631579 3.73684211 3.94736842 4.15789474 4.36842105 4.57894737
 4.78947368 5.        ]
'''
print(e.dtype)
#>>>float64

e=e.astype(int)
print(e)
#>>>[1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 5]
print(e.dtype)
#>>>int64

Uso en Dataframe: convertir el tipo de datos en el campo especificado

import pandas as pd
e=np.linspace(1,5,20)
edf=pd.DataFrame(e)
edf[0].head(3)
#>>>
0    1.000000
1    1.210526
2    1.421053
Name: 0, dtype: float64

print(edf[0].dtype)
#>>>float64

edf[0]=edf[0].astype(int)
edf[0].head(3)
#>>>
0    1
1    1
2    1
Name: 0, dtype: int64

print(edf[0].dtype)
#>>>int64

 

Supongo que te gusta

Origin blog.csdn.net/weixin_41611054/article/details/90675423
Recomendado
Clasificación