按R中的工作日序列对频率矩阵进行排序
Sorting a frequency matrix by weekday sequence in R
我正在对包含某些交易的数据集进行一些探索性研究。
每一行代表一个特定日期的交易。我想生成不同工作日的交易频率矩阵。
table(weekdays(x$date))
这是有效的,但工作日是按字母顺序 (e.g. Mo, Fr, Sa, Tu..)
而不是逻辑顺序 (Mo, Tu, We..)
。
有人知道如何轻松解决这个问题吗?还是我必须对结果进行因式分解?
最良好的祝愿,
马库斯
使用factor
:
# oldlocale <- Sys.getlocale("LC_TIME")
# Sys.setlocale("LC_TIME", "english")
table(factor(
weekdays(Sys.Date()+0:7),
levels=c("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")
))
# Monday Tuesday Wednesday Thursday Friday Saturday Sunday
# 1 1 1 1 2 1 1
# Sys.setlocale("LC_TIME", oldlocale)
我正在对包含某些交易的数据集进行一些探索性研究。
每一行代表一个特定日期的交易。我想生成不同工作日的交易频率矩阵。
table(weekdays(x$date))
这是有效的,但工作日是按字母顺序 (e.g. Mo, Fr, Sa, Tu..)
而不是逻辑顺序 (Mo, Tu, We..)
。
有人知道如何轻松解决这个问题吗?还是我必须对结果进行因式分解?
最良好的祝愿, 马库斯
使用factor
:
# oldlocale <- Sys.getlocale("LC_TIME")
# Sys.setlocale("LC_TIME", "english")
table(factor(
weekdays(Sys.Date()+0:7),
levels=c("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday")
))
# Monday Tuesday Wednesday Thursday Friday Saturday Sunday
# 1 1 1 1 2 1 1
# Sys.setlocale("LC_TIME", oldlocale)