Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python删除非整数行,转换为int_Python_String_Sorting_Pandas_Integer - Fatal编程技术网

python删除非整数行,转换为int

python删除非整数行,转换为int,python,string,sorting,pandas,integer,Python,String,Sorting,Pandas,Integer,是否有一种简单的方法可以删除包含非整数单元格值的行,然后/并将字符串转换为整数,然后升序排序?我有一个数据集(应该是记录编号的单列),其中有我想要删除的字符串。这段代码似乎有效,但排序似乎就像“float”是“string”一样。例如,记录编号的排序如下: 0 1 2 200000000 201 3 代码: 有没有一种方法可以在不首先转换为float的情况下执行此操作?我想删除不适合int64的数字,您可以将所有字符串元素转换为浮点元素,并执行以下排序方法 def numeric_co

是否有一种简单的方法可以删除包含非整数单元格值的行,然后/并将字符串转换为整数,然后升序排序?我有一个数据集(应该是记录编号的单列),其中有我想要删除的字符串。这段代码似乎有效,但排序似乎就像“float”是“string”一样。例如,记录编号的排序如下:

0
1
2
200000000
201
3
代码:


有没有一种方法可以在不首先转换为float的情况下执行此操作?我想删除不适合int64的数字,您可以将所有字符串元素转换为浮点元素,并执行以下排序方法

    def numeric_compare(x, y):
    return float(x)-float(y)

>>> sorted(['10.0','2000.0','30.0'],cmp=numeric_compare)
['10.0', '30.0', '2000.0']

代码中的问题是

cln['Record Number'].astype(float)
不修改数据帧。因此,它将列视为字符串类型,并对其进行相应的排序。如果打印
cln['Record Number'].dtype
在声明之后,它应该说清楚。 如果你想修改它,你应该做作业

cln['Record Number'] = cln['Record Number'].astype(float)

有没有办法从原始输入df1中删除非整数,而不是生成新的序列?
cln['Record Number'] = cln['Record Number'].astype(float)