使用Python脚本将Azure ML中的'String Feature'数据帧转换为Float
我试图理解如何使用python脚本将azure ml使用Python脚本将Azure ML中的'String Feature'数据帧转换为Float,python,pandas,csv,azure-machine-learning-studio,Python,Pandas,Csv,Azure Machine Learning Studio,我试图理解如何使用python脚本将azure mlString特性数据类型转换为float。我的数据集包含“HH:MM”数据时间格式。它被识别为字符串特征,如以下img所示: 我想将其转换为浮点类型,它将时间戳除以84600(24小时),因此17:30将转换为0729166667,因此我编写python脚本来转换它。这是我的剧本: import pandas as pd import numpy as np def timeToFloat(x): frt = [3600,60]
String特性
数据类型转换为float。我的数据集包含“HH:MM”数据时间格式。它被识别为字符串特征
,如以下img所示:
我想将其转换为浮点类型,它将时间戳除以84600(24小时),因此17:30
将转换为0729166667
,因此我编写python脚本来转换它。这是我的剧本:
import pandas as pd
import numpy as np
def timeToFloat(x):
frt = [3600,60]
data = str(x)
result = float(sum([a*b for a,b in zip(frt, map(int,data.split(':')))]))/86400
return result if isNotZero(x) else 0.0
def isNotZero(x):
return (x is "0")
def azureml_main(dataframe1 = None):
df = pd.DataFrame(dataframe1)
df["Departure Time"] = pd.to_numeric(df["Departure Time"]).apply(timeToFloat)
print(df["Departure Time"])
return df,
当我运行脚本时,它失败了。然后我尝试检查它是否为str
,但它返回None
我们能否将
字符串功能
视为字符串
?或者我应该如何正确地转换这些数据?到数值的转换似乎是个问题,因为没有从字符串到数字的默认解析
如果您只使用pd.apply(timeToFloat)是否有效
Roope-Microsoft Azure ML团队