import pandas as pd
git_log = pd.read_csv(
"../../../spring-petclinic/git_knowledge.log",
names=['additions', 'deletions', 'filename', 'author'],
sep='\t')
git_log['author'] = git_log['author'].ffill()
git_log = git_log.dropna()
git_log.head()
additions | deletions | filename | author | |
---|---|---|---|---|
1 | 2 | 3 | pom.xml | Dave Syer |
3 | 1 | 1 | readme.md | Antoine Rey |
5 | 1 | 0 | pom.xml | Antoine Rey |
7 | 1 | 1 | pom.xml | Stephane Nicoll |
8 | 11 | 9 | src/main/java/org/springframework/samples/petc... | Stephane Nicoll |
git_log[git_log['filename'] == ".classpath"]
additions | deletions | filename | author | |
---|---|---|---|---|
4185 | 0 | 32 | .classpath | Michael Isvy |
4501 | 0 | 5 | .classpath | Michael Isvy |
4669 | 28 | 6 | .classpath | Michael Isvy |
4776 | 2 | 2 | .classpath | Rossen Stoyanchev |
4859 | 8 | 36 | .classpath | Keith Donald |
5094 | 43 | 0 | .classpath | Costin Leau |
git_log[git_log['filename'] == ".bowerrc"]
additions | deletions | filename | author | |
---|---|---|---|---|
362 | 0 | 3 | .bowerrc | Dapeng |
1888 | 1 | 1 | .bowerrc | Antoine Rey |
2971 | 3 | 0 | .bowerrc | Faycal Ihabritane |
pd.DataFrame.var?
git_log['aid'] = pd.factorize(git_log.author)[0]
gs = git_log.groupby('filename')['author']
# pd.DataFrame(gs.ndim() / gs.count())
gs.
filename .bowerrc 3 .classpath 6 .editorconfig 2 .gitignore 8 .mvn/wrapper/maven-wrapper.jar 1 .mvn/wrapper/maven-wrapper.properties 1 .project 5 .settings/.jsdtscope 3 .settings/com.springsource.server.ide.jdt.core.xml 2 .settings/org.eclipse.jdt.core.prefs 3 .settings/org.eclipse.jst.common.project.facet.core.prefs 2 .settings/org.eclipse.m2e.core.prefs 2 .settings/org.eclipse.m2e.wtp.prefs 2 .settings/org.eclipse.wst.common.component 5 .settings/org.eclipse.wst.common.project.facet.core.xml 3 .settings/org.eclipse.wst.jsdt.ui.superType.container 2 .settings/org.eclipse.wst.jsdt.ui.superType.name 2 .settings/org.eclipse.wst.validation.prefs 2 .settings/org.maven.ide.eclipse.prefs 2 .settings/org.springframework.ide.eclipse.beans.core.prefs 2 .settings/org.springframework.ide.eclipse.core.prefs 3 .springBeans 14 .travis.yml 2 README.md 2 authors.txt 2 bower.json 3 db/build.xml 2 db/dropTables.txt 2 db/emptyDB.txt 2 db/mysql/createDB.txt 2 .. src/test/java/org/springframework/samples/petclinic/vet/VetControllerTests.java 1 src/test/java/org/springframework/samples/petclinic/vet/VetTests.java 1 src/test/java/org/springframework/samples/petclinic/web/CrashControllerTests.java 6 src/test/java/org/springframework/samples/petclinic/web/OwnerControllerTests.java 9 src/test/java/org/springframework/samples/petclinic/web/PetControllerTests.java 9 src/test/java/org/springframework/samples/petclinic/web/PetTypeFormatterTests.java 2 src/test/java/org/springframework/samples/petclinic/web/VetControllerTest.java 2 src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java 15 src/test/java/org/springframework/samples/petclinic/web/VisitControllerTests.java 10 src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java 10 src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTestWithContainer-config.xml 3 src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewWithContainerTest.java 3 src/test/java/org/springframework/samples/petclinic/web/VisitsViewTest-config.xml 3 src/test/java/org/springframework/samples/petclinic/web/VisitsViewTest.java 4 src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests-config.xml 2 src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests.java 5 src/test/jmeter/petclinic_test_plan.jmx 4 src/test/resources/log4j.xml 2 src/test/resources/logback-test.xml 3 src/test/resources/org/springframework/samples/petclinic/AbstractClinicTests-context.xml 5 src/test/resources/org/springframework/samples/petclinic/hibernate/HibernateClinicTests-context.xml 3 src/test/resources/org/springframework/samples/petclinic/jdbc/JdbcClinicTests-context.xml 2 src/test/resources/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinicTests-context.xml 2 src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-entityManager.xml 3 src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-hibernateAdapter.xml 2 src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-jpaCommon.xml 5 src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-openJpaAdapter.xml 2 src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-toplinkAdapter.xml 2 src/test/resources/spring/mvc-test-config.xml 1 travis.yml 2 Name: author, Length: 1674, dtype: int64
git_log[git_log['filename'] == ".bowerrc"]
additions | deletions | filename | author | aid | |
---|---|---|---|---|---|
362 | 0 | 3 | .bowerrc | Dapeng | 7 |
1888 | 1 | 1 | .bowerrc | Antoine Rey | 1 |
2971 | 3 | 0 | .bowerrc | Faycal Ihabritane | 21 |
git_log[git_log['filename'] == ".editorconfig"]
additions | deletions | filename | author | aid | |
---|---|---|---|---|---|
3023 | 5 | 2 | .editorconfig | Antoine Rey | 1 |
3028 | 9 | 0 | .editorconfig | Antoine Rey | 1 |
git_log[git_log['filename'] == ".gitignore"]
additions | deletions | filename | author | |
---|---|---|---|---|
66 | 1 | 0 | .gitignore | Dave Syer |
358 | 2 | 0 | .gitignore | Antoine Rey |
1862 | 0 | 1 | .gitignore | Patrick Crocker |
1879 | 1 | 0 | .gitignore | Antoine Rey |
3440 | 2 | 1 | .gitignore | Cyrille Le Clerc |
3519 | 1 | 0 | .gitignore | Michael Isvy |
4186 | 1 | 0 | .gitignore | Michael Isvy |
4667 | 4 | 0 | .gitignore | Michael Isvy |
gb = git_log.groupby(['filename', 'author']).count()
gb.groupby(gb.index.get_level_values(0)).var()
additions | deletions | |
---|---|---|
filename | ||
.bowerrc | 0.000000 | 0.000000 |
.classpath | 1.000000 | 1.000000 |
.editorconfig | NaN | NaN |
.gitignore | 0.800000 | 0.800000 |
.mvn/wrapper/maven-wrapper.jar | NaN | NaN |
.mvn/wrapper/maven-wrapper.properties | NaN | NaN |
.project | 0.250000 | 0.250000 |
.settings/.jsdtscope | 0.500000 | 0.500000 |
.settings/com.springsource.server.ide.jdt.core.xml | 0.000000 | 0.000000 |
.settings/org.eclipse.jdt.core.prefs | 0.500000 | 0.500000 |
.settings/org.eclipse.jst.common.project.facet.core.prefs | 0.000000 | 0.000000 |
.settings/org.eclipse.m2e.core.prefs | NaN | NaN |
.settings/org.eclipse.m2e.wtp.prefs | NaN | NaN |
.settings/org.eclipse.wst.common.component | 0.333333 | 0.333333 |
.settings/org.eclipse.wst.common.project.facet.core.xml | 0.500000 | 0.500000 |
.settings/org.eclipse.wst.jsdt.ui.superType.container | 0.000000 | 0.000000 |
.settings/org.eclipse.wst.jsdt.ui.superType.name | 0.000000 | 0.000000 |
.settings/org.eclipse.wst.validation.prefs | 0.000000 | 0.000000 |
.settings/org.maven.ide.eclipse.prefs | 0.000000 | 0.000000 |
.settings/org.springframework.ide.eclipse.beans.core.prefs | 0.000000 | 0.000000 |
.settings/org.springframework.ide.eclipse.core.prefs | 0.500000 | 0.500000 |
.springBeans | 50.000000 | 50.000000 |
.travis.yml | 0.000000 | 0.000000 |
README.md | NaN | NaN |
authors.txt | NaN | NaN |
bower.json | 0.000000 | 0.000000 |
db/build.xml | NaN | NaN |
db/dropTables.txt | NaN | NaN |
db/emptyDB.txt | NaN | NaN |
db/mysql/createDB.txt | NaN | NaN |
... | ... | ... |
src/test/java/org/springframework/samples/petclinic/vet/VetControllerTests.java | NaN | NaN |
src/test/java/org/springframework/samples/petclinic/vet/VetTests.java | NaN | NaN |
src/test/java/org/springframework/samples/petclinic/web/CrashControllerTests.java | 3.000000 | 3.000000 |
src/test/java/org/springframework/samples/petclinic/web/OwnerControllerTests.java | 12.000000 | 12.000000 |
src/test/java/org/springframework/samples/petclinic/web/PetControllerTests.java | 12.000000 | 12.000000 |
src/test/java/org/springframework/samples/petclinic/web/PetTypeFormatterTests.java | 0.000000 | 0.000000 |
src/test/java/org/springframework/samples/petclinic/web/VetControllerTest.java | NaN | NaN |
src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java | 20.000000 | 20.000000 |
src/test/java/org/springframework/samples/petclinic/web/VisitControllerTests.java | 10.333333 | 10.333333 |
src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java | 16.333333 | 16.333333 |
src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTestWithContainer-config.xml | 0.500000 | 0.500000 |
src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewWithContainerTest.java | 0.500000 | 0.500000 |
src/test/java/org/springframework/samples/petclinic/web/VisitsViewTest-config.xml | NaN | NaN |
src/test/java/org/springframework/samples/petclinic/web/VisitsViewTest.java | NaN | NaN |
src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests-config.xml | NaN | NaN |
src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests.java | NaN | NaN |
src/test/jmeter/petclinic_test_plan.jmx | 2.000000 | 2.000000 |
src/test/resources/log4j.xml | 0.000000 | 0.000000 |
src/test/resources/logback-test.xml | 0.500000 | 0.500000 |
src/test/resources/org/springframework/samples/petclinic/AbstractClinicTests-context.xml | 0.250000 | 0.250000 |
src/test/resources/org/springframework/samples/petclinic/hibernate/HibernateClinicTests-context.xml | 0.500000 | 0.500000 |
src/test/resources/org/springframework/samples/petclinic/jdbc/JdbcClinicTests-context.xml | NaN | NaN |
src/test/resources/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinicTests-context.xml | 0.000000 | 0.000000 |
src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-entityManager.xml | 0.500000 | 0.500000 |
src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-hibernateAdapter.xml | 0.000000 | 0.000000 |
src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-jpaCommon.xml | 0.250000 | 0.250000 |
src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-openJpaAdapter.xml | 0.000000 | 0.000000 |
src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-toplinkAdapter.xml | 0.000000 | 0.000000 |
src/test/resources/spring/mvc-test-config.xml | NaN | NaN |
travis.yml | NaN | NaN |
1674 rows × 2 columns
ownership = git_log.groupby(['filename', 'author']).count()
ownership.groupby(
[ownership.index.get_level_values(0)]).sum()
additions | deletions | |
---|---|---|
filename | ||
.bowerrc | 3 | 3 |
.classpath | 6 | 6 |
.editorconfig | 2 | 2 |
.gitignore | 8 | 8 |
.mvn/wrapper/maven-wrapper.jar | 1 | 1 |
.mvn/wrapper/maven-wrapper.properties | 1 | 1 |
.project | 5 | 5 |
.settings/.jsdtscope | 3 | 3 |
.settings/com.springsource.server.ide.jdt.core.xml | 2 | 2 |
.settings/org.eclipse.jdt.core.prefs | 3 | 3 |
.settings/org.eclipse.jst.common.project.facet.core.prefs | 2 | 2 |
.settings/org.eclipse.m2e.core.prefs | 2 | 2 |
.settings/org.eclipse.m2e.wtp.prefs | 2 | 2 |
.settings/org.eclipse.wst.common.component | 5 | 5 |
.settings/org.eclipse.wst.common.project.facet.core.xml | 3 | 3 |
.settings/org.eclipse.wst.jsdt.ui.superType.container | 2 | 2 |
.settings/org.eclipse.wst.jsdt.ui.superType.name | 2 | 2 |
.settings/org.eclipse.wst.validation.prefs | 2 | 2 |
.settings/org.maven.ide.eclipse.prefs | 2 | 2 |
.settings/org.springframework.ide.eclipse.beans.core.prefs | 2 | 2 |
.settings/org.springframework.ide.eclipse.core.prefs | 3 | 3 |
.springBeans | 14 | 14 |
.travis.yml | 2 | 2 |
README.md | 2 | 2 |
authors.txt | 2 | 2 |
bower.json | 3 | 3 |
db/build.xml | 2 | 2 |
db/dropTables.txt | 2 | 2 |
db/emptyDB.txt | 2 | 2 |
db/mysql/createDB.txt | 2 | 2 |
... | ... | ... |
src/test/java/org/springframework/samples/petclinic/vet/VetControllerTests.java | 1 | 1 |
src/test/java/org/springframework/samples/petclinic/vet/VetTests.java | 1 | 1 |
src/test/java/org/springframework/samples/petclinic/web/CrashControllerTests.java | 6 | 6 |
src/test/java/org/springframework/samples/petclinic/web/OwnerControllerTests.java | 9 | 9 |
src/test/java/org/springframework/samples/petclinic/web/PetControllerTests.java | 9 | 9 |
src/test/java/org/springframework/samples/petclinic/web/PetTypeFormatterTests.java | 2 | 2 |
src/test/java/org/springframework/samples/petclinic/web/VetControllerTest.java | 2 | 2 |
src/test/java/org/springframework/samples/petclinic/web/VetControllerTests.java | 15 | 15 |
src/test/java/org/springframework/samples/petclinic/web/VisitControllerTests.java | 10 | 10 |
src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTest.java | 10 | 10 |
src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewTestWithContainer-config.xml | 3 | 3 |
src/test/java/org/springframework/samples/petclinic/web/VisitsAtomViewWithContainerTest.java | 3 | 3 |
src/test/java/org/springframework/samples/petclinic/web/VisitsViewTest-config.xml | 3 | 3 |
src/test/java/org/springframework/samples/petclinic/web/VisitsViewTest.java | 4 | 4 |
src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests-config.xml | 2 | 2 |
src/test/java/org/springframework/samples/petclinic/web/VisitsViewTests.java | 5 | 5 |
src/test/jmeter/petclinic_test_plan.jmx | 4 | 4 |
src/test/resources/log4j.xml | 2 | 2 |
src/test/resources/logback-test.xml | 3 | 3 |
src/test/resources/org/springframework/samples/petclinic/AbstractClinicTests-context.xml | 5 | 5 |
src/test/resources/org/springframework/samples/petclinic/hibernate/HibernateClinicTests-context.xml | 3 | 3 |
src/test/resources/org/springframework/samples/petclinic/jdbc/JdbcClinicTests-context.xml | 2 | 2 |
src/test/resources/org/springframework/samples/petclinic/jdbc/SimpleJdbcClinicTests-context.xml | 2 | 2 |
src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-entityManager.xml | 3 | 3 |
src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-hibernateAdapter.xml | 2 | 2 |
src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-jpaCommon.xml | 5 | 5 |
src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-openJpaAdapter.xml | 2 | 2 |
src/test/resources/org/springframework/samples/petclinic/jpa/applicationContext-toplinkAdapter.xml | 2 | 2 |
src/test/resources/spring/mvc-test-config.xml | 1 | 1 |
travis.yml | 2 | 2 |
1674 rows × 2 columns