我正在尝试转换“熊猫系列”中的单位。
df["he"] returns a Pandas Series:
0 5'10"
1 5'2"
...
下面的变量num1
应该提取数字 5 。 num2
应该提取数字 7 。
该代码适用于5'7"
,但不适用于5'10"
如何从x[2:]
变为可以提取'
之前的所有内容?
过去,我曾经使用过index()
和find()
之类的功能-但是,我是Pandas的新手,正努力了解如何实现这些功能。
def conversion(x):
num1 = int(x[:1])
num2 = int(x[2:3])
return (num1 * 12 + num2) * 2.54
df["he"] = df["he"].apply(conversion)
答案 0 :(得分:1)
好像您的值是字符串格式。拆分是一种出色的字符串方法,可以完成您的任务。
def conversion(x):
spl = x.split("'")
num1 = int(spl[0])
num2 = int(spl[1])
return (num1 * 12 + num2) * 2.54