我有一个pandas数据框,其中一列包含以下格式的年份和季度的字符串:public async Task<string> GetUserInfo()
{
authContext = new AuthenticationContext(authority, new FileCache());
//
// Get an access token.
//
AuthenticationResult result = null;
try
{
result = await authContext.AcquireTokenSilentAsync(ResourceId, clientId);
username = result.UserInfo.DisplayableId;
}
}
我的问题:``如何将其转换为季度的最后一天,即2015-Q1
。
答案 0 :(得分:2)
您可以尝试
pd.to_datetime(s).apply(lambda x : pd.Period(x, freq='Q').end_time)
Out[252]:
0 2015-03-31
1 2015-03-31
2 2015-03-31
3 2015-03-31
4 2015-03-31
5 2015-03-31
6 2015-03-31
7 2015-03-31
8 2015-03-31
9 2015-03-31
dtype: datetime64[ns]
答案 1 :(得分:0)
您可以在每个季度都在同一日期结束的假设下编写函数(对于该季度末涉及的所有月份均是如此)。然后,您可以将此功能应用于所有需要更改的条目。
def string_concatenation(name):
data = name.split("-")
if data[1] == "Q1":
return_value = data[0] + "-03-31"
elif data[1] == "Q2":
return_value = data[0] + "-06-30"
elif data[1] == "Q3":
return_value = data[0] + "-09-30"
elif data[1] == "Q4":
return_value = data[0] + "-12-31"
return return_value
# returns "2015-09-30"
print(string_concatenation("2015-Q3"))