section I 分离文件(不降低重复)

获取重复值的索引->which(duplicated(Data.condition))

删除重复值-> Data[!duplicated(Data.condition),]

手动运行年份2021-2015

data <- read.csv("/Users/kunle/Documents/pythonProject/小论文/PythonScripts/2021-2015.csv")
data_2021 <- data %>%
  filter(Date == 2021)
write.csv(data_2021, "/Users/kunle/Documents/pythonProject/小论文/TXTData/2021_TXT.csv")

手动运行年份2012,2013

data <- read.csv("/Users/kunle/Documents/pythonProject/小论文/TXTData/2012-2013.csv")
data_2013 <- data %>%
  filter(Date == 2013)
write.csv(data_2013, "/Users/kunle/Documents/pythonProject/小论文/TXTData/2013_TXT.csv")

Section II 词频柱状图

制作数据混合表

date = c(2012,2013,2014,2015,2016,2017,2018,2019,2020,2021)
Power_list <- c()
Solution_list <- c()
Spirit_list <- c()
Result_list <- c()
for (i in 1:length(date)){
  str = paste("/Users/kunle/Documents/pythonProject/小论文/TXTData/",date[i],"_TXT.csv", sep = "")
  data <- read.csv(str)
  Power_list[i] <- sum(data$Power)
  Solution_list[i] <- sum(data$Solution)
  Spirit_list[i] <- sum(data$Spirit)
  Result_list[i] <- sum(data$Result)
}
all_data <- data.frame(date = date,
                       Power = Power_list,
                       Solution = Solution_list,
                       Spirit = Spirit_list,
                       Result = Result_list)
all_data <- melt(all_data, id = "date")
head(all_data)

绘图

ggplot(all_data, aes(x = date, y = value, fill = variable)) + 
  geom_bar(stat='identity', position = 'dodge') + 
  labs(x = "年份", y = "频数") +
  scale_x_discrete(limits = date) +
  theme(text = element_text(family='Kai'), legend.position = c(0.02, 0.98), legend.justification = c(0,1))
Warning: Continuous limits supplied to discrete scale.
Did you mean `limits = factor(...)` or `scale_*_continuous()`?

保存本地

setwd("/Users/kunle/Documents/pythonProject/小论文/Results For Paper")
ggsave(filename = "1.png", width = 13, height = 8, units = "in", dpi = 400)
LS0tCnRpdGxlOiAiQW5hbHlzaXMgYW5kIE1vZGVsaW5nIgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tCgojIyBzZWN0aW9uIEkg5YiG56a75paH5Lu2KOS4jemZjeS9jumHjeWkjSkKCuiOt+WPlumHjeWkjeWAvOeahOe0ouW8lS1cPmB3aGljaChkdXBsaWNhdGVkKERhdGEuY29uZGl0aW9uKSlgCgrliKDpmaTph43lpI3lgLwtXD4gYERhdGFbIWR1cGxpY2F0ZWQoRGF0YS5jb25kaXRpb24pLF1gCgojIyMg5omL5Yqo6L+Q6KGM5bm05Lu9MjAyMS0yMDE1CgpgYGB7cn0KZGF0YSA8LSByZWFkLmNzdigiL1VzZXJzL2t1bmxlL0RvY3VtZW50cy9weXRob25Qcm9qZWN0L+Wwj+iuuuaWhy9QeXRob25TY3JpcHRzLzIwMjEtMjAxNS5jc3YiKQpkYXRhXzIwMjEgPC0gZGF0YSAlPiUKICBmaWx0ZXIoRGF0ZSA9PSAyMDIxKQp3cml0ZS5jc3YoZGF0YV8yMDIxLCAiL1VzZXJzL2t1bmxlL0RvY3VtZW50cy9weXRob25Qcm9qZWN0L+Wwj+iuuuaWhy9UWFREYXRhLzIwMjFfVFhULmNzdiIpCmBgYAoKIyMjIOaJi+WKqOi/kOihjOW5tOS7vTIwMTIsMjAxMwoKYGBge3J9CmRhdGEgPC0gcmVhZC5jc3YoIi9Vc2Vycy9rdW5sZS9Eb2N1bWVudHMvcHl0aG9uUHJvamVjdC/lsI/orrrmlocvVFhURGF0YS8yMDEyLTIwMTMuY3N2IikKZGF0YV8yMDEzIDwtIGRhdGEgJT4lCiAgZmlsdGVyKERhdGUgPT0gMjAxMykKd3JpdGUuY3N2KGRhdGFfMjAxMywgIi9Vc2Vycy9rdW5sZS9Eb2N1bWVudHMvcHl0aG9uUHJvamVjdC/lsI/orrrmlocvVFhURGF0YS8yMDEzX1RYVC5jc3YiKQoKYGBgCgojIyBTZWN0aW9uIElJIOivjemikeafseeKtuWbvgoKIyMjIOWItuS9nOaVsOaNrua3t+WQiOihqAoKYGBge3J9CmRhdGUgPSBjKDIwMTIsMjAxMywyMDE0LDIwMTUsMjAxNiwyMDE3LDIwMTgsMjAxOSwyMDIwLDIwMjEpClBvd2VyX2xpc3QgPC0gYygpClNvbHV0aW9uX2xpc3QgPC0gYygpClNwaXJpdF9saXN0IDwtIGMoKQpSZXN1bHRfbGlzdCA8LSBjKCkKZm9yIChpIGluIDE6bGVuZ3RoKGRhdGUpKXsKICBzdHIgPSBwYXN0ZSgiL1VzZXJzL2t1bmxlL0RvY3VtZW50cy9weXRob25Qcm9qZWN0L+Wwj+iuuuaWhy9UWFREYXRhLyIsZGF0ZVtpXSwiX1RYVC5jc3YiLCBzZXAgPSAiIikKICBkYXRhIDwtIHJlYWQuY3N2KHN0cikKICBQb3dlcl9saXN0W2ldIDwtIHN1bShkYXRhJFBvd2VyKQogIFNvbHV0aW9uX2xpc3RbaV0gPC0gc3VtKGRhdGEkU29sdXRpb24pCiAgU3Bpcml0X2xpc3RbaV0gPC0gc3VtKGRhdGEkU3Bpcml0KQogIFJlc3VsdF9saXN0W2ldIDwtIHN1bShkYXRhJFJlc3VsdCkKfQphbGxfZGF0YSA8LSBkYXRhLmZyYW1lKGRhdGUgPSBkYXRlLAogICAgICAgICAgICAgICAgICAgICAgIFBvd2VyID0gUG93ZXJfbGlzdCwKICAgICAgICAgICAgICAgICAgICAgICBTb2x1dGlvbiA9IFNvbHV0aW9uX2xpc3QsCiAgICAgICAgICAgICAgICAgICAgICAgU3Bpcml0ID0gU3Bpcml0X2xpc3QsCiAgICAgICAgICAgICAgICAgICAgICAgUmVzdWx0ID0gUmVzdWx0X2xpc3QpCmFsbF9kYXRhIDwtIG1lbHQoYWxsX2RhdGEsIGlkID0gImRhdGUiKQpoZWFkKGFsbF9kYXRhKQpgYGAKCiMjIyDnu5jlm74KCmBgYHtyfQpnZ3Bsb3QoYWxsX2RhdGEsIGFlcyh4ID0gZGF0ZSwgeSA9IHZhbHVlLCBmaWxsID0gdmFyaWFibGUpKSArIAogIGdlb21fYmFyKHN0YXQ9J2lkZW50aXR5JywgcG9zaXRpb24gPSAnZG9kZ2UnKSArIAogIGxhYnMoeCA9ICLlubTku70iLCB5ID0gIumikeaVsCIpICsKICBzY2FsZV94X2Rpc2NyZXRlKGxpbWl0cyA9IGRhdGUpICsKICB0aGVtZSh0ZXh0ID0gZWxlbWVudF90ZXh0KGZhbWlseT0nS2FpJyksIGxlZ2VuZC5wb3NpdGlvbiA9IGMoMC4wMiwgMC45OCksIGxlZ2VuZC5qdXN0aWZpY2F0aW9uID0gYygwLDEpKQpgYGAKCiMjIyDkv53lrZjmnKzlnLAKCmBgYHtyfQpzZXR3ZCgiL1VzZXJzL2t1bmxlL0RvY3VtZW50cy9weXRob25Qcm9qZWN0L+Wwj+iuuuaWhy9SZXN1bHRzIEZvciBQYXBlciIpCmdnc2F2ZShmaWxlbmFtZSA9ICIxLnBuZyIsIHdpZHRoID0gMTMsIGhlaWdodCA9IDgsIHVuaXRzID0gImluIiwgZHBpID0gNDAwKQpgYGAK