NumPy는 Datetime64를 Datetime.Datetime 또는 Timestamp로 변환합니다.
- 문제
-
datetime.datetime
을np.datetime64
및pd.Timestamp
로 변환 -
np.datetime64
를datetime.datetime
및pd.Timestamp
로 변환 -
Timestamp
를datetime
및datetime64
로 변환
이 기사는 numPy.datetim64
, datetime.datetime
및 Timestamp
간에 데이터를 변환하는 방법을 보여줍니다.
문제
데이터를 처리할 때 순서가 있든 없든 날짜와 시간을 만나는 것은 상당히 흔한 일입니다. 상황에 따라 시간과 날짜를 적절하게 처리하여 처리된 데이터가 원하는 형식이 되도록 해야 합니다.
코드 예:
import datetime
import numpy as np
import pandas as pd
dt = datetime.datetime(2022, 5, 21)
ts = pd.DatetimeIndex([dt])[0]
dt64 = np.datetime64(dt)
위의 코드에서 우리는 datetime
, numpy
및 pandas
라는 세 개의 모듈을 가져왔습니다. 각 모듈은 날짜 저장 및 처리를 위한 구현을 제공합니다(각각 고유한 사용 사례가 있음).
datetime.datetime()
을 사용하여 datetime
인스턴스를 생성하고 dt
라는 변수에 저장합니다. pandas
의 경우 pd.DatetimeIndex()
메서드를 사용했습니다. 이 메서드는 n
개의 datetime64
인스턴스를 저장하고 배열의 첫 번째 멤버에 액세스하여 Timestamp
인스턴스를 반환하는 불변 배열을 생성합니다.
pandas
모듈로 이동하여 datetime64()
메서드를 사용하여 datetime
인스턴스를 변환하고 dt64
라는 변수에 저장합니다.
datetime
을 Timestamp
및 datetime64
인스턴스로 쉽게 변환할 수 있습니다. 이 기사에서는 np.datetime64
를 datetime
및 Timestamp
인스턴스로 변환하는 방법을 살펴보겠습니다.
datetime.datetime
을 np.datetime64
및 pd.Timestamp
로 변환
코드 예:
import datetime
import numpy as np
import pandas as pd
dt = datetime.datetime(
year=2018, month=10, day=24, hour=4, minute=3, second=10, microsecond=7199
)
# convert datetime.datetime to np.datetim364
print(np.datetime64(dt))
# datetime.datetime to pd.Timestamp
print(pd.Timestamp(dt))
출력:
2018-10-24T04:03:10.007199
2018-10-24 04:03:10.007199
날짜 시간. 변환될
datetime64및
Timestamp의 생성자에
datetime 인스턴스를 전달하여 datetime
을 datetime64
및 Timestamp
로 변환합니다.
np.datetime64
를 datetime.datetime
및 pd.Timestamp
로 변환
코드 예:
import datetime
import numpy as np
import pandas as pd
# np.datetime64 to datetime.datetime
dt64 = np.datetime64("2017-10-24 05:34:20.123456")
unix_epoch = np.datetime64(0, "s")
one_second = np.timedelta64(1, "s")
seconds_since_epoch = (dt64 - unix_epoch) / one_second
print(datetime.datetime.utcfromtimestamp(seconds_since_epoch))
# np.datetime64 to Timestamp
print(pd.Timestamp(dt64))
출력:
2017-10-24 05:34:20.123456
2017-10-24 05:34:20.123456
np.datetime64
에서 datetime.datetime
으로 변환하려면 먼저 datetime64
데이터를 초(epoch 형식)로 변환해야 합니다. 변환 후 초는 epoch 시간을 읽고 이를 datetime
의 인스턴스로 변환하는 utcfromtimestamp
라는 datetime
메서드로 전달됩니다.
np.datetime64
에서 Timestamp
로의 경우 상대적으로 간단합니다. np.datetime64
인스턴스를 Timestamp
생성자에 전달하기만 하면 됩니다.
Timestamp
를 datetime
및 datetime64
로 변환
코드 예:
import datetime
import numpy as np
import pandas as pd
ts = pd.Timestamp("2017-10-24 04:24:33.654321")
# Timestamp to datetime.datetime
print(ts.to_pydatetime())
# Timestamp to np.datetime64
print(ts.to_datetime64())
출력:
2017-10-24 04:24:33.654321
2017-10-24T04:24:33.654321000
이러한 함수의 도움으로 Timestamp
는 단 한 번의 메서드 호출로 datetime
및 datetime64
로 쉽게 변환될 수 있습니다. Timestamp
에서 datetime.datetime
으로 변환하려면 to_pydatetime()
메소드를 사용하십시오. Timestamp
인스턴스를 datetime으로 변환합니다. datetime
인스턴스.
Timestamp
에서 datetime
으로 변환하려면 to_datetime64()
메서드를 사용하세요. Timestamp
인스턴스를 np.datetime64
인스턴스로 변환합니다.
Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.
LinkedIn