Python 使用整型数据类型,根据另一列的值对数据帧进行排序
我想根据列对数据帧进行排序,但值存储为字符串,但应将其视为整数Python 使用整型数据类型,根据另一列的值对数据帧进行排序,python,sorting,pandas,Python,Sorting,Pandas,我想根据列对数据帧进行排序,但值存储为字符串,但应将其视为整数 df.sort(col1) 其中col1=['0','1','12','13','3'] 如何使用它,使其将这些数字视为整数而不是字符串?您可以在排序之前尝试以下操作: df['col1'] = df['col1'].astype(int) 如果您想保持数据帧不变,只想对其进行排序… 这是假设col1是数据帧df 选项1 df.iloc[df['col1'].astype(int).argsort()] 选项2 您也可以使用p
df.sort(col1)
其中col1=['0','1','12','13','3']
如何使用它,使其将这些数字视为整数而不是字符串?您可以在排序之前尝试以下操作:
df['col1'] = df['col1'].astype(int)
如果您想保持数据帧不变,只想对其进行排序…
这是假设
col1
是数据帧df
选项1
df.iloc[df['col1'].astype(int).argsort()]
选项2您也可以使用
pd.\u numeric
df.iloc[pd.to_numeric(df['col1']).argsort()]
选项3为了获得更高的效率,您可以重新构建操作底层numpy数组
v = df.values
a = df['col1'].values.astype(int).argsort()
pd.DataFrame(v[a], df.index[a], df.columns)