我有一个系列看起来像这样:
0 1.5
1 39 mins
2 2.5
3 3
我想将39分钟转换为0.39。以下是我的代码:
df['content_duration'].apply(lambda x: x.str.replace('mins', '').astype(int) * 1/100 if x in 'mins' else x)
我没有收到错误,但仍然无法转换。我怎样才能做到这一点?
我的预期输出将是:
0 1.5
1 0.39
2 2.5
3 3
最佳答案
这为我工作:
# dataset for read_clipboard()
'''
content_duration
1.5
39 mins
2.5
3
'''
df = pd.read_clipboard('\t')
df['content_duration'] = df['content_duration'].apply(lambda x: int(x.replace('mins', '').strip()) * 1/100 if 'mins' in x else x)
print(df)
输出:
content_duration
0 1.5
1 0.39
2 2.5
3 3
关于python - 如何检查字符串中是否包含某些单词?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61844248/