Python 检查列是否由字符串数据类型中的数字组成
下面是有关df简化版本的脚本:Python 检查列是否由字符串数据类型中的数字组成,python,pandas,dataframe,Python,Pandas,Dataframe,下面是有关df简化版本的脚本: import pandas as pd df = pd.DataFrame({ 'feature' : ['cd_player', 'sat_nav', 'sub_woofer', 'usb_port','cd_player', 'sat_nav', 'sub_woofer', 'usb_port','cd_player', 'sat_nav', 'sub_woofer', 'usb_port'],
import pandas as pd
df = pd.DataFrame({
'feature' : ['cd_player', 'sat_nav', 'sub_woofer', 'usb_port','cd_player', 'sat_nav', 'sub_woofer', 'usb_port','cd_player', 'sat_nav', 'sub_woofer', 'usb_port'],
'feature_value' : ['1','1','0','4','1','0','0','1','1','1','1','0'],
'feature_colour' : ['red','orange','yellow','green','blue','indigo','violet','red','orange','yellow','green','blue']
})
df
feature feature_value feature_colour
0 cd_player 1 red
1 sat_nav 1 orange
2 sub_woofer 0 yellow
3 usb_port 4 green
4 cd_player 1 blue
5 sat_nav 0 indigo
6 sub_woofer 0 violet
7 usb_port 1 red
8 cd_player 1 orange
9 sat_nav 1 yellow
10 sub_woofer 1 green
11 usb_port 0 blue
df.dtypes
feature object
feature_value object
dtype: object
我想找到一种方法来查找具有数值的所有列,并将它们的数据类型转换为整数和/或浮点。当然,在本例中,手动操作很容易,但是所讨论的DF具有约50个带有数值的潜在COL,但由于它们都具有对象
数据类型,因此手动确定效率很低
预期产出:
df.dtypes
feature object
feature_value int64
dtype: object
任何帮助都将不胜感激。试试以下方法:
df = df.apply(lambda x: pd.to_numeric(x, errors='ignore'))
df.dtypes
试试这个:
df = df.apply(lambda x: pd.to_numeric(x, errors='ignore'))
df.dtypes
正如我所希望的那样,非常感谢你的帮助!正如我所希望的那样,非常感谢你的帮助!