我继承了一个复杂的 gradle 构建系统。它工作得很好,但包含多个插件(java、groovy、antlr、jacoco、jetty 等)。我不知道如何完成某件事,所以我做了一个“./gradlewtasks --all”。事实证明,有一个“生成”任务完成了这一任务(它重新生成了基于 antlr 的代码)。很好,但是花了很长时间,我不知道。
生成的任务从哪里来?我可以使用什么 gradle 命令来找出该任务的来源?有一个自定义的antlr任务有一个“dependsOn”生成“,所以我认为它来自antlr插件,但很难说。
我有一些足球数据,其中包含两个球队名称和一些数字数据:
ar = [
["browns", "patriots", 2, 5],
["patriots", "bills", 4, 15],
["browns", "bills", 1, 10],
["eagles", "browns", 3, 11]
]
frame = pandas.DataFrame(ar, columns=['Team1', 'Team2', 'Down', 'ToGo'])
Run Code Online (Sandbox Code Playgroud)
我想将团队名称转换为枚举类型,我可以对第一个团队名称执行此操作,例如:
frame['Team1'], uniques = frame['Team1'].factorize()
Run Code Online (Sandbox Code Playgroud)
我怎样才能同时对两个团队名称执行此操作,以便具有一致的唯一性并且没有缺失值?请注意,这'bills'不在Team1列中,所以我不能只应用映射(尽管我也不知道如何做到这一点)。
编辑:生成的团队名称应如下所示:
Team1 Team2
0 0 1
1 1 3
2 0 3
3 2 0
Run Code Online (Sandbox Code Playgroud)
因此“browns”始终标记为“0”,在第 0 行中标记为 Team1,在第 3 行中标记为 Team2。