可以说我有一个数据帧df
作为从Pandas中的字符串中提取int?
A B
1 V2
3 W42
1 S03
2 T02
3 U71
我想有一个新的列(无论是在它的df
年底或用它代替列B
,因为它并不重要),仅提取来自列B
的int。这是我想列C
看起来像
C
2
42
3
2
71
所以,如果有在号码前面,如03 0,那么我想回到3不是03
我该怎么做?
可以说我有一个数据帧df
作为从Pandas中的字符串中提取int?
A B
1 V2
3 W42
1 S03
2 T02
3 U71
我想有一个新的列(无论是在它的df
年底或用它代替列B
,因为它并不重要),仅提取来自列B
的int。这是我想列C
看起来像
C
2
42
3
2
71
所以,如果有在号码前面,如03 0,那么我想回到3不是03
我该怎么做?
您可以转换为字符串并使用正则表达式提取整数。
df['B'].str.extract('(\d+)').astype(int)
假设总有只有一个首字母
df['B'] = df['B'].str[1:].astype(int)
我写了一个小环要做到这一点,因为我没有我的琴弦的数据帧,但在列表中。这样一来,你也可以加少许的if语句占花车:
output= ''
input = 'whatever.007'
for letter in input :
try :
int(letter)
output += letter
except ValueError :
pass
if letter == '.' :
output += letter
输出=浮动(输出)
,或者你可以INT(输出)如果你喜欢。