3

たとえば、文字列形式の DateTime の列を持つデータセットを手元に持っています。

a = 'Tue Sep 22 1998 00:00:00 GMT+0000 (Coordinated Universal Time)'

a は列の値です。

Azure Machine Learning Studio でメタデータ エディターを使用すると、機能せず、(String から DateTime への) 変換を実行できないというエラーが表示されます。フォーマットの関係だと思います。だから私は次のことを試しています:

a = str(a)[:10]+','+str(a)[10:15]
#'Tue Sep 22, 1998'

これで、.NET は確かに変換を行うことができます。つまり、Convert.ToDateTime() のようなメソッドを使用します。しかし、Python スクリプトの出力を視覚化すると、文字列が「Tue Sep 22, 1998 None」に変更されていることがわかりました。これは非常に奇妙です。誰がそれの何が悪いのか知っていますか?以下に Python コードの抜粋を添付します。

def azureml_main(dataframe1 = None, dataframe2 = None):

  dataframe1['timestamp'] = dataframe1['timestamp'].apply(lambda a: str(a)[:10]+','+str(a)[10:15])

  return dataframe1,
4

1 に答える 1

1

日付形式の正規化には Python を使用します。基になる R が例外をスローするため、dataFrame を返す前に文字列に変更する必要があります。

def azureml_main(dataframe1 = None, dataframe2 = None):
    import pandas as pd
    dates = pd.to_datetime(dataframe1['DATE'])
    dates = dates.apply(lambda x: x.strftime('%Y-%m-%d'))
    dataframe1['DATE'] = dates
return dataframe1,

次に、メタデータ エディターを使用して型を DateTime に変更します。

于 2016-01-23T00:56:10.717 に答える