永久封存 | Yuuta 台 | 😷 #Pray4Wuhan
#GitHub #Feature
这个设计也属于比较容易想的类型了,主要还是给你们看的玩,生成的垃圾文本是没有多大用的。
Fly | 全群最菜
http://bytew.net/OIer/
因为我只认识 Fly 和 LWL12 两个 OI 生,而 LWL 拼音搜索了找不到,所以这里看看 Fly 学校的成绩
总之,也有 400 分的大佬也有 100 多分 200 多分的,当然这个 OI 加分啊也是十分有限的
整个学校看来,从 2011 起到现在都是 OI 获奖都是稳步上升,不过一等奖一直都是比较小幅度波动的
2017 的公开数据 三/二/一:11/11/5
还是很不错的成绩。综合评分:622,综合评级:C。
因为各种失败
就是说大佬大概是 十分之一的概率
能得奖的大概是 一半以上,27 (看走势今年可能是三十几)人比 51 人
因为数学不熟悉统计学不熟悉就是这样的分析方法了,学习是需要时间的,我时间有限。
(每次 DOM 操作和 JQuery 各种问题总是让我摸不着头脑,简单 filter 一下居然花三十分钟 JavaScript 要玩)
啥时候弄 C# .NET Core 搞个 LINQ 查询 CSV,贼方便。
这个前端没做 URL routing,就不提供快捷链接了,反正界面简洁容易上手。
总之,也有 400 分的大佬也有 100 多分 200 多分的,当然这个 OI 加分啊也是十分有限的
整个学校看来,从 2011 起到现在都是 OI 获奖都是稳步上升,不过一等奖一直都是比较小幅度波动的
2017 的公开数据 三/二/一:11/11/5
还是很不错的成绩。综合评分:622,综合评级:C。
for (let e in resultLogs.children()) { console.log(e); if (e.attribute.item('data-targert')) console.log(e) }因为各种失败
filter 也用不了暂时算了,长度 / 2 大概是 resultLogs.children().length / 2 //=> 51 人就是说大佬大概是 十分之一的概率
能得奖的大概是 一半以上,27 (看走势今年可能是三十几)人比 51 人
因为数学不熟悉统计学不熟悉就是这样的分析方法了,学习是需要时间的,我时间有限。
(每次 DOM 操作和 JQuery 各种问题总是让我摸不着头脑,简单 filter 一下居然花三十分钟 JavaScript 要玩)
啥时候弄 C# .NET Core 搞个 LINQ 查询 CSV,贼方便。
这个前端没做 URL routing,就不提供快捷链接了,反正界面简洁容易上手。
duangsuse Throws
因为我只认识 Fly 和 LWL12 两个 OI 生,而 LWL 拼音搜索了找不到,所以这里看看 Fly 学校的成绩 总之,也有 400 分的大佬也有 100 多分 200 多分的,当然这个 OI 加分啊也是十分有限的 整个学校看来,从 2011 起到现在都是 OI 获奖都是稳步上升,不过一等奖一直都是比较小幅度波动的 2017 的公开数据 三/二/一:11/11/5 还是很不错的成绩。综合评分:622,综合评级:C。 for (let e in resultLogs.children()) {…
This media is not supported in your browser
VIEW IN TELEGRAM
duangsuse Throws
🤔 Sticker
呃,至于这个数据工具的后端代码么,比较有 OI 生的风格,但命名问题和空格代码风格都不是很好看(e.g.
也包括表语法的缩进什么的,Python 还有个
PHP 的还没看过。
JS 的都不想看,因为不相干,处理过的数据正在观看<del>视奸</del>中.
repos.each do |i| 这种参数命名)。也包括表语法的缩进什么的,Python 还有个
del 语句我觉得比较新奇,虽然 C++ 里也弄了 delete
(这是说 Python 的数据整理器)PHP 的还没看过。
JS 的都不想看,因为不相干,处理过的数据正在观看<del>视奸</del>中.
duangsuse Throws
result.csv.zip
这些是学生的
因为不方便使用 LibreOffice Calc 分析,我准备写个 Ruby 脚本进行一下 JSON 解析转换,请等候
result.csv 是合并之后的获奖选手的数据。
school_data.csv 是排名之后的学校排名及获奖记录数据
因为不方便使用 LibreOffice Calc 分析,我准备写个 Ruby 脚本进行一下 JSON 解析转换,请等候
duangsuse Throws
这些是学生的 result.csv 是合并之后的获奖选手的数据。 school_data.csv 是排名之后的学校排名及获奖记录数据 因为不方便使用 LibreOffice Calc 分析,我准备写个 Ruby 脚本进行一下 JSON 解析转换,请等候
现在正在使用 pry,要剔除一些不需要的数据,也即选取出一些需要的数据,顺便统计一下即可
... 真的不应该用 Psych 作为 Ruby 的 YAML 解析库,他们的 API 真是贫瘠
真可怜,Ruby 本身就是为了让编程更快乐更高效创建的,里面内建了 Hash 类的映射表支持,而 Psych 连映射表都舍不得创建,还真是『飞快』。
Psych 简直就是 YAML 解析器后端,根本没有一个良好封装的范....
懒得扩充 Psych 的 API 了,可怜 Ruby 强大的内省能力了
首先来构造新的更大的抽象模型(
然后
最后导出 CSV 大工告成。
这些代码我准备改写成 Haskell 然后提交给 OIerDB 使用... 说好下面这月工程月呢... 啥工程没做...?
反正最近没事
cd model; pry -r./convert_data.rb... 真的不应该用 Psych 作为 Ruby 的 YAML 解析库,他们的 API 真是贫瘠
真可怜,Ruby 本身就是为了让编程更快乐更高效创建的,里面内建了 Hash 类的映射表支持,而 Psych 连映射表都舍不得创建,还真是『飞快』。
Psych 简直就是 YAML 解析器后端,根本没有一个良好封装的范....
# convert_data.rb, 比较模板化的代码... 呃... 其实也没什么,好看就行接下来我们就可以扒数据了,首先定义抽象模型
require 'csv'
require 'yaml'
file = File.read('result.csv') # 这一层加载完就落在作用域外了
@logs = CSV.parse(file)
def collect_log(index = 0); @logs.collect { |l| l[index] }; end
@names = collect_log 1
@names_set = @names.uniq
@shorts = collect_log 4
@signs = collect_log 7
@year_joined = collect_log 9
puts "Bad sign part" unless @signs.uniq.-(%w[-1 0 1]).empty?
collect_log(6).map { |s| YAML.parse(s) rescue warn "Fail: #{$!}" }
class AwareInfo以后添加方法用打开类即可,怀念 Kotlin Haskell 的简洁...
%i[school school_id identity province rank grade ctype award_type score].each { |a| attr_accessor a }
def to_s; "#{identity} @ #{school}:#{grade} #{award_type} #{score} @ #{rank}"; end
end
懒得扩充 Psych 的 API 了,可怜 Ruby 强大的内省能力了
def AwareInfo.parse(aware_map)现在我们已经拿到了所有需要的数据(名字、拼音首字母、获奖记录、标记、加入年份),可以制作表格了。
c = aware_map.children
aware = AwareInfo.new
aware.school = c[1].value
aware.school_id = c[3].value
aware.identity = c[5].value
aware.province = c[7].value
aware.rank = c[9].value
aware.grade = c[11].value
aware.ctype = c[13].value
aware.award_type = c[15].value
aware.score = c[17].value
return aware
end
def parse_awares(list); list.children.map { |l| AwareInfo.parse(l) }; end
@awares = @data.map { |d| parse_awares(d.children[0]) }
首先来构造新的更大的抽象模型(
class OIer
%i[name pinyin awares sign year].each { |att| attr_accessor(att) }
def to_s; "#{name}(#{pinyin}) #{year}:#{sign}:\t#{awares}"; end
end
然后
最后导出 CSV 大工告成。
这些代码我准备改写成 Haskell 然后提交给 OIerDB 使用... 说好下面这月工程月呢... 啥工程没做...?
反正最近没事
duangsuse Throws
convert_data.rb
TOPLEVEL_BINDING 设置本地变量无效考虑到可能是同一个绑定作用域时序区别也有区别的问题CSV 类的
new 参数是什么鬼啊... 没有用不能直接写入文件