facebookresearch / RandomizedValueFunctions
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 64% duplication:
    • 2,782 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,807 duplicated lines
  • 267 duplicates
system64% (1,807 lines)
Duplication per Extension
py64% (1,807 lines)
Duplication per Component (primary)
qlearn/atari84% (1,221 lines)
qlearn/commun46% (380 lines)
qlearn/toys42% (206 lines)
qlearn/envs0% (0 lines)
ROOT0% (0 lines)

Duplication Between Components (50+ lines)

G qlearn/atari qlearn/atari qlearn/toys qlearn/toys qlearn/atari--qlearn/toys 177

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 267 duplicates...
Size#FoldersFilesLinesCode
37 x 2 qlearn/atari
qlearn/atari
train_bootstrapped_agent.py
train_prior_bootstrapped_agent.py
142:191 (24%)
143:191 (24%)
view
36 x 2 qlearn/atari
qlearn/atari
train_bayes_backprop_agent.py
train_mnf_agent.py
205:257 (23%)
211:263 (22%)
view
35 x 2 qlearn/atari
qlearn/atari
train_dqn.py
train_noisy_agent.py
173:221 (23%)
164:212 (23%)
view
34 x 2 qlearn/atari
qlearn/atari
train_bootstrapped_agent.py
train_prior_bootstrapped_agent.py
195:243 (22%)
195:243 (22%)
view
33 x 2 qlearn/atari
qlearn/atari
train_mnf_agent.py
train_noisy_agent.py
215:263 (21%)
190:237 (22%)
view
33 x 2 qlearn/commun
qlearn/commun
dropout_toy_regression.py
toy_regression.py
46:89 (37%)
55:100 (37%)
view
33 x 2 qlearn/atari
qlearn/atari
train_bayes_backprop_agent.py
train_noisy_agent.py
209:257 (21%)
190:237 (22%)
view
32 x 2 qlearn/atari
qlearn/atari
train_bayes_backprop_agent.py
train_prior_bootstrapped_agent.py
212:257 (20%)
199:243 (20%)
view
32 x 2 qlearn/atari
qlearn/atari
train_dqn.py
train_noisy_agent.py
93:143 (21%)
90:137 (21%)
view
32 x 2 qlearn/atari
qlearn/atari
train_bootstrapped_agent.py
train_noisy_agent.py
199:243 (20%)
193:237 (21%)
view
32 x 2 qlearn/atari
qlearn/atari
train_noisy_agent.py
train_prior_bootstrapped_agent.py
193:237 (21%)
199:243 (20%)
view
32 x 2 qlearn/atari
qlearn/atari
local_mnf_agent.py
mnf_agent.py
51:90 (38%)
53:92 (38%)
view
32 x 2 qlearn/atari
qlearn/atari
train_mnf_agent.py
train_prior_bootstrapped_agent.py
218:263 (20%)
199:243 (20%)
view
32 x 2 qlearn/atari
qlearn/atari
train_bootstrapped_agent.py
train_mnf_agent.py
199:243 (20%)
218:263 (20%)
view
32 x 2 qlearn/atari
qlearn/atari
train_bayes_backprop_agent.py
train_bootstrapped_agent.py
212:257 (20%)
199:243 (20%)
view
30 x 2 qlearn/atari
qlearn/atari
train_bootstrapped_agent.py
train_dqn.py
94:139 (19%)
97:143 (20%)
view
30 x 2 qlearn/atari
qlearn/atari
train_noisy_agent.py
train_prior_bootstrapped_agent.py
92:137 (20%)
95:140 (19%)
view
30 x 2 qlearn/atari
qlearn/atari
train_bootstrapped_agent.py
train_prior_bootstrapped_agent.py
94:139 (19%)
95:140 (19%)
view
30 x 2 qlearn/atari
qlearn/atari
train_dqn.py
train_prior_bootstrapped_agent.py
97:143 (20%)
95:140 (19%)
view
30 x 2 qlearn/atari
qlearn/atari
train_bootstrapped_agent.py
train_noisy_agent.py
94:139 (19%)
92:137 (20%)
view
Duplicated Units
The list of top 3 duplicated units.
See data for all 3 unit duplicates...
Size#FoldersFilesLinesCode
25 x 2 qlearn/atari
qlearn/atari
local_mnf_agent.py
mnf_agent.py
0:0 
0:0 
view
12 x 2 qlearn/commun
qlearn/commun
local_mnf_layer.py
mnf_layer.py
0:0 
0:0 
view
7 x 3 qlearn/atari
qlearn/atari
qlearn/atari
noisy_agent.py
bayes_backprop_agent.py
dqn_agent.py
0:0 
0:0 
0:0 
view