使ucl phas结果更好

resultr的Python项目详细描述


结果

Makes UCL PHAS results better

注意很有可能我犯了错误,所以用一桶盐来做这个。

加州大学物理与天文学学院每年都以pdf格式发布研究结果,格式如下:

Candidate NumberDevcomModule1MarkModule2MarkModule3MarkModule4MarkModule5MarkModule6MarkModule7MarkModule8MarkProvisional outcome
ABCD0100PHAS000099PHAS000198PHAS000297PHAS000396PHAS000495PHAS000594PHAS000693PHAS000792P
ABCD124PHAS000393PHAS000155PHAS000443PHAS000740PHAS000234PHAS000625PHAS000515PHAS00003>>

resultr允许您:

  • 获取一年的加权平均值
  • 在本年度获得您的排名
  • 绘制容器中模块的结果直方图:(0,40),(40,50),(50,60),(60,70),(80,90),(90,100)
  • 按模块重新格式化结果(如下所示)并输出到csv

输出格式:

DevcomPHAS0000PHAS0001PHAS0002PHAS0003PHAS0004PHAS0005PHAS0006PHAS0007Averages
100999897969594939295.5
2435534934315254039

安装

$ pip install resultr

用法示例

需要:

使pdf可用

您需要将ucl提供的.pdf文件转换为csv,并用“,”分隔。为此,我使用了smallpdf的pdf-to-excel转换器(这使得xlsx对于pdf页面的每一页都有一个工作表)。然后我使用Google Docs将每张工作表导出为csv,并将它们组合到一个文本编辑器中(请注意,除了第一页之外,您应该删除所有页面的标题行(cand、devcom、module1等)

运行结果

您可以使用inquirer提示运行interact with resultr:

ask demo

或者在运行resultr时传递参数:

args demo

$ resultr -h 
  usage: resultr [-h][--input INPUT][--format FORMAT][--plot][--exportplots EXPORTPLOTS][--showplots][--my][--year YEAR][--rank][--candidate CANDIDATE]

  Makes UCL PHAS results better

  optional arguments:
    -h, --help              show this help message and exit

    --input, -i INPUT
                            csv file to import

    --format, -f FORMAT
                            reformats results by module and exports it to file
                            specified

    --plot, -p              plot the module results

    --exportplots, -ep EXPORTPLOTS
                            export all plots to /path/you/want/

    --showplots, -sp        show all plots

    --my, -m                returns your weighted average for the year

    --year, -y YEAR         specify your year

    --rank, -r              returns your rank in the year

    --candidate, -c CANDIDATE
                            specify your candidate number

发布历史记录

  • 0.1.10条
    • 长度将“cand”改为“cand”
  • 0.1.9条
    • args.exportplotsargs.showplots传递到resultr\u plot.howplotargs
  • 0.1.8条
    • 将入口点更改为使用main.py
  • 0.1.7条
    • 将入口点添加到setup.py(resultr)
  • 0.1.6条
    • 分成resultr_formatresultr_plot
  • 0.1.5分
    • 已将matplotlib更改为与agg
    • 一起运行
  • 0.1.4条
    • 在setup.py中添加了matplotlib要求
  • 0.1.3条
    • 在setup.py中添加了inquirer需求
  • 0.1.2条
    • 添加了pip
  • 0.1.1条
    • 将提示符和cli代码从'__main__'移动到main()
    • 将名称更改为resultr原因酷
  • 0.1.0条
    • 第一次正确释放

哈克·哈查特瑞安–hi@hayk.io

根据麻省理工学院的许可证发行。有关详细信息,请参见LICENSE

https://github.com/haykkh

贡献

  1. 叉它(https://github.com/haykkh/resultr/fork
  2. 创建功能分支(git checkout -b feature/fooBar
  3. 提交更改(git commit -am 'Add some fooBar'
  4. 推到分支(git push origin feature/fooBar
  5. 创建新的拉取请求

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
tomcat java。lang.NoClassDefFoundError:无法初始化类com。太阳代理$Proxy8   java Spring引导CommandLineRunner异常处理建议   java文件。getParentFile()。mkdirs();在osx中创建重复文件夹   java Lucene IndexWriter线程安全   HashMapJava加速了哈希映射的创建   java执行器服务从Servlet线程启动   guava在Java中创建异构列表   泛型Java将比较器传递给构造函数   在Java中生成公钥和私钥的加密会生成类似的所有密钥,包括私钥和公钥   java ResourceLocation抛出FileNotFoundException Minecraft Forge 1.12.2   java使用动态键序列化JSON响应   在空映射上调用方法时发生java NullPointerException   java在Selenium中选择不同行中的按钮   优化在Java中,降低时间和空间复杂性的最佳方法是什么?   java表。setValueAt(…)不为JTable工作   javajsonrpc与JSON   ant从java编译中排除类的特定方法