【发布时间】:2021-09-29 20:09:25
【问题描述】:
我有一列包含多种单位,我需要将其分成两个不同的列:一列用于公制(mm、cm、m),另一列用于英制(in、ft、yd)
d = {'col1': [1 in, 2 mm, 3 ft, 4 yd, 5 m, 6cm]}
df = pd.DataFrame(data=d)
拆分成:
Index df_metric df_imperial
0 | | 1 in
---------------------------------
1 | 2 mm |
---------------------------------
2 | | 3 ft
---------------------------------
3 | | 4 yd
---------------------------------
4 | 5 m |
---------------------------------
5 | 6 cm |
我试过了:
def seperate_units(df, col, numbers):
if numbers.find('yd') > -1 or numbers.find('in') > -1 or numbers.find('ft') > -1 or numbers.find('"') > -1:
print(numbers)
df[col+'_imperial'].append(numbers)
else:
df[col+'_imperial'].append('')
return df[col+'_imperial']
但我无法让它工作
【问题讨论】:
标签: python pandas multiple-columns units-of-measurement