Python将字符串数组转换为浮点数数组的方法

Python将字符串数组转换为浮点数数组的方法

在竞争激烈的编码环境中,有时我们会得到一些其他数据类型的输入,我们需要将它们转换为其他形式,这个问题与我们有一个字符串形式的输入,我们需要将其转换为浮点数一样。让我们讨论一下将字符串数组转换为浮点数组的几种方法。

示例:

initial array: ['1.1' '1.5' '2.7' '8.9']
final array: [ 1.1 1.5 2.7 8.9]

使用astype将字符串数组转换为浮点数数组

Pandas astype()是最重要的方法之一。它用于改变一个系列的数据类型。如果一个列可以作为字符串导入,但为了进行操作,我们必须将其转换为浮点数, astype()就是用来进行这种数据类型转换的。

import numpy as np
 
# initialising array
ini_array = np.array(["1.1", "1.5", "2.7", "8.9"])
 
# printing initial array
print ("initial array", str(ini_array))
 
# converting to array of floats
# using np.astype
res = ini_array.astype(np.float)
 
# printing final result
print ("final array", str(res))

输出:

initial array ['1.1' '1.5' '2.7' '8.9']
final array [ 1.1  1.5  2.7  8.9]

使用np.fromstring将字符串数组转换为浮点数组

numpy.fromstring()函数根据字符串中的文本数据创建一个新的一维数组,并进行初始化。

import numpy as np
 
# initialising array
ini_array = np.array(["1.1", "1.5", "2.7", "8.9"])
 
# printing initial array
print ("initial array", str(ini_array))
 
# converting to array of floats
# using np.fromstring
ini_array = ', '.join(ini_array)
ini_array = np.fromstring(ini_array, dtype = np.float,
                                           sep =', ' )
 
# printing final result
print ("final array", str(ini_array))

输出:

initial array ['1.1' '1.5' '2.7' '8.9']
final array [ 1.1  1.5  2.7  8.9]

使用np.asarray()和类型将字符串数组转换为浮点数数组

numpy.asarray()函数是在我们想把输入转换为数组时使用的。输入可以是列表、图元的列表、图元、图元的图元、列表的图元和数组。

import numpy as np
 
# initialising array
ini_array = np.array(["1.1", "1.5", "2.7", "8.9"])
 
# printing initial array
print ("initial array", str(ini_array))
 
# converting to array of floats
# using np.asarray
final_array = b = np.asarray(ini_array,
        dtype = np.float64, order ='C')
 
# printing final result
print ("final array", str(final_array))

输出:

initial array ['1.1' '1.5' '2.7' '8.9']
final array [ 1.1  1.5  2.7  8.9]

使用np.asfarray将字符串数组转换为浮点数数组

numpy.asfarray()函数是在我们想把输入转化为浮点型数组时使用的。输入包括标量、列表、图元的列表、图元、图元的图元、列表的图元和ndarrays。

import numpy as np
 
# initialising array
ini_array = np.array(["1.1", "1.5", "2.7", "8.9"])
 
# printing initial array
print ("initial array", str(ini_array))
 
# converting to array of floats
# using np.asarray
final_array = b = np.asfarray(ini_array,dtype = float)
 
# printing final result
print ("final array", str(final_array))

输出:

initial array ['1.1' '1.5' '2.7' '8.9']
final array [1.1 1.5 2.7 8.9]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Numpy教程