私はpython(Rから来ている)に不慣れです。私はpandasデータフレームでタイムスタンプシリーズを変換する方法を理解しようとしています(私の場合)これは_df['timestamp']
_)と呼ばれ、Rでは文字列ベクトルと呼ばれますが、これは可能ですか?これはどのように行われますか?
私はdf['timestamp'].apply('str')
を試しましたが、これは単に列全体を_df['timestamp']
_を1つの長い文字列に入れているようです。各要素を文字列に変換し、構造を保持して、それがまだベクトル(またはこれが配列と呼ばれることもある)になるようにしています。
データフレームを考慮してくださいdf
df = pd.DataFrame(dict(timestamp=pd.to_datetime(['2000-01-01'])))
df
timestamp
0 2000-01-01
日時アクセサーdt
を使用して、 strftime
メソッドにアクセスします。 strftime
にフォーマット文字列を渡すと、フォーマットされた文字列が返されます。 dt
アクセサと共に使用すると、一連の文字列が得られます。
df.timestamp.dt.strftime('%Y-%m-%d')
0 2000-01-01
Name: timestamp, dtype: object
訪問 strftime.org
は、フォーマット文字列の便利なセットです。
astype
を使用
>>> import pandas as pd
>>> df = pd.to_datetime(pd.Series(['Jul 31, 2009', '2010-01-10', None]))
>>> df.astype(str)
0 2009-07-31
1 2010-01-10
2 NaT
dtype: object
文字列の配列を返します
VincePの答えに続いて、日時シリーズをインプレースで変換するには、次のようにします。
df['Column_name']=df['Column_name'].astype(str)