Skip to content

Latest commit

 

History

History

writer

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

The goal is to enrich the DNB dataset and index it with Elastic.

process DNB data

download dump

curl --output DNBTitel.rdf.gz "http://datendienst.dnb.de/cgi-bin/mabit.pl?cmd=fetch&userID=opendata&pass=opendata&mabheft=DNBTitel.rdf.gz"

convert RDF to JSON

rdf2json.py DNBTitel.rdf.gz | gzip -c > DNBTitel.json.gz

normalise fields

./json2json.py --normalise DNBTitel.json.gz | gzip -c > DNBTitel_normalised.json.gz

What is the difference between pages and extent?

  • rdf2json.py: extent is from dcterms:extent and pages is from isbd:P1053 (which is “has extent”) - so it is basically the same
  • We use extent when no valid pages are given.

preliminary analysis of the data fields

We analyse the distribution of some metadata fields.

pages

extent

./json2json.py --norm --print "pages_norm,extent" DNBTitel.json.gz | sed "s/[0-9]/0/g" | gzip -c > pages_extent.tsv.gz
echo "pages_norm\textent\titems"
zcat pages_extent.tsv.gz | sort -S1G | uniq -c | head -n20

(after some manual tweaking:)

pages_normextentitems
5631051
0004332641
002895689
00 S.1020134
0172825
000033250
000 S.16541
0 S.95
0000052
00000031

So extent is only given when no (normalised) pages are given -> set pages_norm to pages extracted from extent in those cases.

issued

Extract and normalise the patterns for the “issued” field:

./json2json.py --norm --print "type,issued" DNBTitel.json.gz | sed "s/[0-9]/0/g" > issued.tsv

Let’s have a look at the most frequent patterns:

echo "type\tissued pattern\titems"
sort -S1G issued.tsv | uniq -c | sed -r 's/([0-9]) /\1\t/' | awk -F'\t' '{print $2"\t"$3"\t"$1}' | sort -t$'\t' -nrk3 | head -n20
echo "*distinct pairs\t\t*" $(sort -S1G -u issued.tsv| wc -l)
typeissued patternitems
Document000010559276
Issue00001470687
Article0000981040
Collection381824
Periodical0000-0000304933
Periodical0000-155810
Series0000-62002
Series-42707
Document41579
Periodical-25939
Document00XX24172
Series0000-000018156
000011070
Collection00009181
Document0000-00007250
Periodical2849
Collection0000-00002379
Periodical0000443
Article0000/00331
Article/0000138
distinct pairs105

Get the valid years for the “Document” type:

./json2json.py --normalise --print "type,issued" DNBTitel.json.gz \
    | grep -E '^Document\s+[0-9][0-9][0-9][0-9]$' \
    | awk -F'\t' '{print $2}' | sort | uniq -c | awk '{print $2"\t"$1}' \
                                                     > issued_document_distrib.tsv

Let’s plot the years for the “Document” type:

reset
set term svg enhanced size 800,600
set out 'issued.svg'
set grid
set xrange [1450:2050]
set logscale y

set xlabel 'year'
set ylabel 'frequency'

plot "issued_document_distrib.tsv" using 1:2 with lines title ''

set term pngcairo enhanced size 800,600
set out 'issued.png'
replot

issued.png

medium

./json2json.py -n -p medium DNBTitel.json.gz | sort -S1G | uniq -c
mediumcount
294526
http://iflastandards.info/ns/isbd/terms/mediatype/T100819783
RDACarrierType/10184001290
RDACarrierType/10449604425
RDAMediaType/100223059
RDAMediaType/1003159226

place

./json2json.py -n -p place DNBTitel.json.gz | sort -S1G | uniq -c > place.tsv
head place.tsv

price

publisher

./json2json.py -n -p publisher DNBTitel.json.gz | sort -S1G | uniq -c > publisher.tsv

contributor

./json2json.py -n -p contributor DNBTitel.json.gz | sort -S1G | uniq -c > contributor.tsv

P60493

We also use the new file gnditems_2017-09-05_14:59.json which contains information about site links within Wikipedia.

Extract, convert, and normalise data:

./rdf2json.py DNBTitel.rdf.gz | gzip -c > DNBTitel_P60493.json.gz
./json2json.py -n -w gnditems_2017-09-05_14:59.json DNBTitel_P60493.json.gz \
    | gzip -c \
           > DNBTitel_P60493_normalised_enriched.json.gz

Get frequency of use:

./json2json.py -f \
               -p "issued_norm,pages_norm,P60493,creator_wd.*.occupation_writer" \
               DNBTitel_P60493_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) {print $3}}' \
    | sort -S1G | uniq -c | sort -nr | head -n20
itemsP60493
120677Roman
8631Kriminalroman
6799Gedichte
5513Erzählungen
4931Erzählung
2880Novelle
2665Thriller
2654roman
2644[Roman]
1176Erzählg
985Science-fiction-Roman
931historischer Roman
875Kriminal-Roman
813Novellen
760Western-Roman
644Geschichten
571Erinnerungen
557Erzählgn
525Essays
505eine Biographie

enrich with Wikidata

By using the field creator (or should we use ~contributor~?).

identify properties

For each entity in Wikidata that has a label, a GND id (P227) property, and an occupation (P106) property, we extract the following properties:

idnameroundnote
P106occupation1+2condition for inclusion
P227GND id1condition for inclusion
P21gender2
P569date of birth1
P19place of birth2
P625- coordinate location2extract separately
P570date of death1
P20place of death2
P625- coordinate location2extract separately
P103native language2
P1412languages spoken, written or signed2
P166awards received2
P18image (P18)1

Approach:

  1. find all entities with P106 and P227 and collect all other relevant properties
  2. get the labels and missing values (e.g., coordinates of cities) for properties

extract subclasses of writer

To label entities whose occupation property points to a subclass of writer, we extract all subclasses of writer with SPARQL, since this is faster and simpler than using the dump.

Since an entity can have several values for the occupation property (e.g., George Washington) we extract all values and if one of the occupations is a subclass of writer, we label the entity as a writer.

We do this with curl as before:

SELECT ?subclass
WHERE
{
  ?subclass wdt:P279* wd:Q36180
}
curl \
    --header "Accept: text/tab-separated-values" \
    --output wikidata_writer_subclasses.tsv \
    --globoff \
     'https://query.wikidata.org/sparql?query=SELECT%20%3Fsubclass%20%3FsubclassLabel%0AWHERE%0A%7B%0A%20%20%3Fsubclass%20wdt%3AP279*%20wd%3AQ36180%20.%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%23%20...%20include%20the%20labels%0A%20%20%20%20bd%3AserviceParam%20wikibase%3Alanguage%20%22en%22%0A%20%20%7D%0A%7D'
wc -l wikidata_writer_subclasses.tsv

process dump

Is done using Java (see WriterExtractor.java for the basic idea, full code in this repository) and creates the file gndwriter.json:

> Processed 32346937 entities in 2203 sec (14683 per second) > read 357423 items and 69577 property values with missing labels

grep "Goethe" gndwriter.json | sed -e "s/^,/{/" -e "s/$/}/" | json_pp
{
   "118540238" : {
      "id" : "Q5879",
      "name" : "Johann Wolfgang von Goethe",
      "occupations" : [
         {
            "id" : "Q4164507",
            "name" : "art critic"
         },
         {
            "id" : "Q3579035",
            "name" : "travel writer"
         },
         {
            "name" : "poet",
            "id" : "Q49757"
         },
         {
            "id" : "Q1209498",
            "name" : "poet lawyer"
         },
         {
            "name" : "music critic",
            "id" : "Q1350157"
         },
         {
            "name" : "novelist",
            "id" : "Q6625963"
         },
         {
            "name" : "autobiographer",
            "id" : "Q18814623"
         },
         {
            "name" : "playwright",
            "id" : "Q214917"
         },
         {
            "name" : "aphorist",
            "id" : "Q3606216"
         },
         {
            "id" : "Q18939491",
            "name" : "diarist"
         },
         {
            "id" : "Q1234713",
            "name" : "theologian"
         },
         {
            "name" : "art theorist",
            "id" : "Q17391638"
         }
      ]
   }
}

enrich JSON

Modifying json2json.py to add the Wikidata data for each found writer with the --wikidata option.

./json2json.py -n -w gnditems_2017-08-22_15:03.json DNBTitel.json.gz \
    | gzip -c \
           > DNBTitel_normalised_enriched.json.gz

test enrichment

basic JSON example

./json2json.py -n -w gnditems_2017-08-22_15:03.json DNBTitel.json.gz | grep "poet lawyer" > poetlawyer_gndwriter.json
grep Egmont poetlawyer_gndwriter.json | head -n1 | json_pp
{
   "contributor" : [
      "116924373"
   ],
   "title" : "Goethes Egmont in Schillers Bearbeitung",
   "place_publisher" : "München ; Leipzig : G. Müller",
   "publisher" : "G. Müller",
   "place" : [
      "München",
      "Leipzig"
   ],
   "issued" : "1914",
   "lang" : "ger",
   "pages" : [
      "153 S."
   ],
   "medium" : "RDACarrierType/1044",
   "_id" : "361432887",
   "pages_norm" : 153,
   "creator_wd" : {
      "118540238" : {
         "languages" : "German",
         "image" : "Goethe (Stieler 1828).jpg",
         "place_of_death" : "Weimar",
         "native_language" : "German",
         "id" : "Q5879",
         "date_of_death" : "1832-03-22",
         "date_of_birth" : "1749-08-28",
         "name" : "Johann Wolfgang von Goethe",
         "awards" : [
            "Merit Order of the Bavarian Crown",
            "Officer of the Legion of Honour",
            "Order of Saint Anna, 1st class"
         ],
         "place_of_birth" : "Frankfurt",
         "gender" : "male",
         "occupation" : [
            "poet lawyer",
            "theatre manager",
            "botanist",
            "politician",
            "painter",
            "philosopher",
            "theologian",
            "jurist",
            "art critic",
            "music critic",
            "Geheimrat",
            "librarian",
            "poet",
            "travel writer",
            "physicist",
            "literary",
            "novelist",
            "playwright",
            "autobiographer",
            "diplomat",
            "statesman",
            "polymath",
            "aphorist",
            "diarist",
            "mineralogist",
            "zoologist",
            "art theorist",
            "lawyer"
         ],
         "occupation_writer" : [
            "poet lawyer",
            "theologian",
            "art critic",
            "music critic",
            "poet",
            "travel writer",
            "novelist",
            "playwright",
            "autobiographer",
            "aphorist",
            "diarist",
            "art theorist"
         ]
      }
   },
   "type" : "Document",
   "issued_norm" : 1914,
   "creator" : [
      "118540238"
   ]
}

how many authors can be mapped?

echo -n "in DNB data\t"
./json2json.py -p "creator,creator_wd.*.name" -c "creator,creator_wd.*.name" DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 != "") print $1"\t"$2}' | sort -S1G -u | wc -l
echo -n "also in Wikidata\t"
./json2json.py -f -p "creator,creator_wd.*.name" -c "creator,creator_wd.*.name" DNBTitel_normalised_enriched.json.gz \
    | sort -S1G -u | wc -l
echo -n "also in Wikidata, occupation subclass of writer\t"
./json2json.py -f -p "creator,creator_wd.*.name,creator_wd.*.occupation_writer" -c "creator,creator_wd.*.name,creator_wd.*.occupation_writer" DNBTitel_normalised_enriched.json.gz \
    | sort -S1G -u | wc -l
echo -n "also in Wikidata, occupation subclass of writer, P60493~/[Rr[oman/\t"
./json2json.py -f -p "P60493,creator,creator_wd.*.name,creator_wd.*.occupation_writer" -c "creator,creator_wd.*.name,creator_wd.*.occupation_writer" DNBTitel_P60493_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 ~ /[Rr]oman/) print $2"\t"$3}' \
    | sort -S1G -u | wc -l
echo -n "also in Wikidata, occupation subclass of writer, P60493=Roman\t"
./json2json.py -f -p "P60493,creator,creator_wd.*.name,creator_wd.*.occupation_writer" -c "creator,creator_wd.*.name,creator_wd.*.occupation_writer" DNBTitel_P60493_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 == "Roman") print $2"\t"$3}' \
    | sort -S1G -u | wc -l
in DNB data3275497
+ in Wikidata201300
+ occupation subclass of writer110143
+ P60493~/[rR]oman/16005
+ P60493=Roman12288

attic

Manually download (a part of) the Wikidata dump (since Java gets a 503 and disk space is scarce):

# this fixes
zcat 20170814.json.gz_ORIG | head -n -2 | head -c -2 | sed -e "\$a]" | gzip -c > 20170814.json.gz

index in Elastic

  • check what happens with JSON like this: “publisher”: “Akad. Kiado\u0301” - is the COMBINING ACUTE ACCENT correctly processed? similar: “publisher”: “Museum fu\u0308r Tierkunde”

Queries:

  • Median, Mean, etc. in Elastic? - percentiles
  • location (format “lat,lon” should work)

create index

TODO: add Wikidata fields

fieldtypeanalysednote
_idstringnoDNB ID
contributorstring
creatorstring
extentstringfield is missing! TODO: difference to pages?
issuedstring
issued_normintegernoyear
langstringno3-letter code or empty
mediumstringno
pagesstringno
pages_normintegerno
placestring
place_publisherstring
pricestring
publisherstring
short_titlestring
subjectstring
titlestringyes
typestringno

fill index

analysis

data filters:

  1. issued_norm >= 1912
  2. author has GND id in Wikidata
  3. author has occupation that is a subclass of writer
  4. work has a page number (extent)

for publishers:

  1. limit maximal number of pages per work to exclude outliers (e.g., to 5000)

media types

All media:

./json2json.py -f -p type DNBTitel_normalised_enriched.json.gz \
    | sort -S1G | uniq -c > media_freq.tsv

With usable page numbers:

./json2json.py -f -p type,pages_norm \
               DNBTitel_normalised_enriched.json.gz \
    | cut -f1 | sort -S1G | uniq -c > media_with_pages_freq.tsv

With all data filters except >= 1912:

./json2json.py -f -p "type,pages_norm,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | cut -f1 | sort -S1G | uniq -c > media_filtered_freq.tsv

With all data filters:

./json2json.py -f -p "issued_norm,type,pages_norm,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) print $2}' \
    | sort -S1G | uniq -c > media_filtered_1912_freq.tsv

Combine into a table:

cat media_freq.tsv
echo "---"
cat media_with_pages_freq.tsv
echo "---"
cat media_filtered_freq.tsv
echo "---"
cat media_filtered_1912_freq.tsv
typefreqfreq (pages given)freq (filtered)freq (filtered, >= 1912)
11070
Article981677
Collection393390347391
Document10632628743411310478011029608
Issue14706881036770
Periodical4899908
Series12286620
sum14102309847125810478401029609

number of pages

All valid page counts:

./json2json.py -f -p "pages_norm" DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{SUM+=$1; CTR+=1} END {print CTR"\t"SUM}'

All valid page counts of known writers:

./json2json.py -f -p "issued_norm,pages_norm,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{SUM+=$2; CTR+=1} END {print CTR"\t"SUM}'

Filter data:

./json2json.py -f -p "issued_norm,pages_norm,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) print $2}' > pages.tsv

Count frequencies:

sort -n -S1G pages.tsv | uniq -c | awk '{print $2"\t"$1}' | sort -n > pages_freq.tsv

Sum of the pages:

echo "items\tpages"
awk -F'\t' '{SUM+=$1; CTR+=1} END {print CTR"\t"SUM}' pages.tsv
filteritemspages
valid pages84712581353853314
+ valid issued, occupation writer1046870239308277
+ issued >= 19121029609235757219

Of the original 14,102,309 items, we can use 1,029,609 items with 235,757,219 pages. Those items fulfill the following conditions:

  • We can extract the year they have been issued.
  • They have been issued in or after 1912.
  • We can extract their extent (number of pages).
  • At least one of their authors has a GND id in Wikidata and an occupation that is a subclass of writer.

For this set we did not require that any other values are available (e.g., publisher) but some analyses might further restrict that set.

Plot distribution:

reset
set term svg enhanced size 800,600
set out 'pages.svg'
set grid
set xrange [0:4000]
set logscale y
set format y "10^%T"

set xlabel 'number of pages'
set ylabel 'frequency'

plot 'pages_freq.tsv' using 1:2 with lines title ''

set term pngcairo enhanced size 800,600
set out 'pages.png'
replot


# showing bogen boundaries
unset logscale
unset format y
set xtics 0,16


# zoom into range 400 to 600 to see 16-patterns of pages
set xrange [400:600]
set term pngcairo enhanced size 800,600
set out 'pages_400-600.png'
plot 'pages_freq.tsv' using 1:2 with lines title ''

set term svg enhanced size 800,600
set out 'pages_400-600.svg'
replot


# zoom into range 200 to 400 to see 16-patterns of pages
set xrange [200:400]
set term pngcairo enhanced size 800,600
set out 'pages_200-400.png'
plot 'pages_freq.tsv' using 1:2 with lines title ''

set term svg enhanced size 800,600
set out 'pages_200-400.svg'
replot


# zoom into range 0 to 200 to see 16-patterns of pages
set xrange [0:200]
set term pngcairo enhanced size 800,600
set out 'pages_000-200.png'
plot 'pages_freq.tsv' using 1:2 with lines title ''

set term svg enhanced size 800,600
set out 'pages_000-200.svg'
replot

page distribution

pages.png

page ranges

pages_000-200.png

pages_200-400.png

pages_400-600.png

top authors

  • TODO: plot distribution of the number of authors per work
./json2json.py -f -p "issued_norm,pages_norm,creator_wd.*.name,creator_wd.*.occupation_writer" -c "creator_wd.*.name,creator_wd.*.occupation_writer"\
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) {sum[$3]+=$2; count[$3]+=1}} END {for (p in sum) printf("%s\t%s\t%s\t%s\n", sum[p], count[p], int(sum[p]/count[p]), p)}' \
          > author_pages_stats.tsv

by item count

./json2json.py -f -p "issued_norm,pages_norm,creator_wd.*.occupation_writer,creator_wd.*.name,creator_wd.*.id" -c "creator_wd.*.occupation_writer,creator_wd.*.name,creator_wd.*.id"\
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) print "[[https://www.wikidata.org/wiki/"$5"]["$4"]]"}' \
    | sort -S1G | uniq -c | sort -nr | head -n50
authoritems
Johann Wolfgang von Goethe5169
Rudolf Steiner3992
Hermann Hesse3364
Heinz G. Konsalik3190
Thomas Mann2609
Karl Marx2578
Friedrich Engels2569
Stefan Zweig2533
Friedrich Schiller2056
Jacob Grimm2025
Franz Kafka2020
Theodor Storm1968
Bertolt Brecht1948
Wilhelm Grimm1947
Erich Kästner1873
Heinrich Böll1796
Friedrich Nietzsche1788
William Shakespeare1703
Rainer Maria Rilke1693
Marie Louise Fischer1678
Gottfried Keller1669
Anselm Grün1605
Martin Luther1600
Sigmund Freud1568
Theodor Fontane1552
E. T. A. Hoffmann1535
Agatha Christie1531
Karl May1503
Heinrich Heine1392
Christine Nöstlinger1344
Hedwig Courths-Mahler1302
Wilhelm Hauff1296
Immanuel Kant1280
Gert Fritz Unger1264
Heinrich von Kleist1255
Janosch1210
Enid Blyton1210
Wilhelm Busch1191
Adalbert Stifter1185
Erich Maria Remarque1181
Vladimir Lenin1118
Johanna Spyri1111
Fyodor Dostoyevsky1088
Honoré de Balzac1087
Leo Tolstoy1087
Max Frisch1079
Jack London1075
Lion Feuchtwanger1048
Edgar Wallace1041
Carl Jung997

by page count

sort -S1G -nr author_pages_stats.tsv | head -n20
authorpagesitemsmean pages
Johann Wolfgang von Goethe12174045169235
Heinz G. Konsalik9845143190308
Thomas Mann9630542614368
Hermann Hesse7441433364221
Rudolf Steiner6980283992174
Stefan Zweig6898612533272
Karl Marx5503522579213
Franz Kafka5389792020266
Fyodor Dostoyevsky5306951088487
Friedrich Engels5277652569205
Karl May5071741503337
Friedrich Nietzsche4753731788265
Lion Feuchtwanger4686201048447
Theodor Fontane4524351552291
Marie Louise Fischer4360681678259
Colleen McCullough4241891432966
Erich Maria Remarque4157201181352
Friedrich Schiller4049482056196
Sigmund Freud4025821568256
Leo Tolstoy3978791087366

by mean page count

sort -S1G -nrk3 author_pages_stats.tsv | head -n20
authorpagesitemsmean pageswork
Reinhard Baumgart3404913210640
Samael Aun Weor141110275226
Günther Bentele103739273842
Jean Quatremer337613376Ces hommes qui ont fait l’euro
Pierre Alexis Ponson du Terrail320013200Rocambol, der Fürst der Katakomben
Colleen McCullough4241891432966
Dieter Hildebrandt2668831042566
André Vauchez253612536Gottes vergessenes Volk
Wolfgang Lauterbach231912319Zivilprozessordnung
Peter Hartmann104270472218
Wolfgang Kleiber1078752157
Herbert Tröndle205212052Strafgesetzbuch und Nebengesetze
Noam Chomsky198589972047
John Bernard Burke405222026450713768, 982125054
Egon Wiberg563331877
Arnold F. Holleman563331877Lehrbuch der anorganischen Chemie, 944635105, 981617034
Frank Göttmann556131853760132070, 770428584, 947104364
Walter Bayer177911779Europäisches Unternehmens- und Kapitalmarktrecht
Marthe Vogt177011770British medical journal
Gustavo Adolfo Bécquer24105141721

There are probably some errors among those …

reset
set encoding utf8
set term pngcairo enhanced size 800,600
set out 'author_pages.png'

set grid
set datafile separator "\t"
set xrange [*:10000]
set logscale
set format y "10^%T"
set format x "10^%T"

set xlabel 'number of items'
set ylabel 'mean number of pages per item'

set label "Reinhard Baumgart" left at 32, 10640 offset .5, .3
set label "Colleen McCullough" left at 143, 2966 offset .5, .3
set label "Samael Aun Weor" left at 27, 5226 offset .5, .3
set label "Guenther Bentele" left at 27, 3842 offset .5, .3
set label "Johann\nWolfgang\nvon\nGoethe" left at 5169, 235 offset -1.8, 3.6

plot 'author_pages_stats.tsv' using 2:3 with points pt 7 title ''

set term svg enhanced size 800,600
set out 'author_pages.svg'
replot

author_pages.png

by occupation

  • TODO: top lists for different occupations
  • TODO: item count vs. mean page count colored by occupation

top works

./json2json.py -f -p "issued_norm,pages_norm,title,_id,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) {print $2"\t[[http://d-nb.info/"$4"]["$3"]]"}}' \
    | sort -S1G -nr | head -n20
titlepages
Tim348333
Selbstvergessenheit332331
Denkzettel239240
Die fünfte Freiheit176150
Revolutionäre Psychologie137317
Die Malerei im Bietigheimer Hornmoldhaus96104
Kostengesetze22297
Die grünen Augen21920
Nicht mehr rauchen und dabei schlank bleiben13008
Flying Dutchmen9306
Fado Alexandrino7969
Il giuoco delle perle di vetro5616
Getreidemarkt am Bodensee5126
Die Waffen nieder!4292
Aeneis4290
Fastnachtsspiele, Tragödien und Komödien4114
Zivilprozessordnung3401
Ces hommes qui ont fait l’euro3376
Complete Works3360
Das grosse Buch der Olympischen Spiele3320

Kafkatest

./json2json.py -f \
               -p "issued_norm,pages_norm,title,_id,creator_wd.*.name,creator_wd.*.occupation_writer" \
               -c "creator_wd.*.name,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912 && $5 == "Franz Kafka") {print $2"\t[[http://d-nb.info/"$4"]["$3"]] ("$1")"}}' \
    | sort -S1G -nr | head -n20
pagestitle (year)
1688Obras inmortales (1976)
1518Récits, romans, journaux (2000)
1463Sämtliche Werke (2008)
1264Briefe an Felice Bauer und andere Korrespondenz aus der Verlobungszeit (2015)
1232Romane & Erzählungen (2004)
1232Das Werk (2011)
1232Romane & Erzählungen (2010)
1222Narraciones y otros escritos (2003)
1211Briefe (2005)
1184Confessioni e diari (1972)
1181Confessioni e diari (1981)
1088Izbrannoe (1999)
1083Verzameld werk (2011)
1072Verzameld werk (1992)
1052Sämtliche Werke (2006)
1052Process (2014)
1045Diarios (2000)
1039Romane (2007)
1019Romane und Erzählungen (2000)
1019Romane und Erzählungen (1996)

top publishers

by item count

./json2json.py -f -p "issued_norm,pages_norm,publisher,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) print $3}' \
    | sort -S1G | uniq -c | sort -S1G -nr | head -n20
publisheritems
Rowohlt25735
Heyne23442
Reclam17808
Suhrkamp15074
Goldmann14385
Dt. Taschenbuch-Verl.11719
Ullstein10705
Herder9701
Fischer-Taschenbuch-Verl.9550
Piper9256
Insel-Verl.6951
Deutscher Taschenbuch-Verlag5692
RM-Buch-und-Medien-Vertrieb [u.a.]5631
Fischer-Taschenbuch-Verlag5313
Beck5130
Büchergilde Gutenberg5061
Diogenes4863
S. Fischer4518
Weltbild4388
Maier4289

After normalisation (see below)

by page count

./json2json.py -f -p "issued_norm,pages_norm,publisher,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) {sum[$3]+=$2; count[$3]+=1}} END {for (p in sum) printf("%s\t%s\t%s\t%s\n",  sum[p], count[p], int(sum[p]/count[p]), p)}' \
    | sort -S1G -nr | head -n20
publisherpage sumitemsmean pages
Heyne785958123442335
Rowohlt603343525735234
Goldmann476803414385331
Suhrkamp375075215074248
Dt. Taschenbuch-Verl.314462111719268
Ullstein311705010705291
Fischer-Taschenbuch-Verl.31050599550325
Reclam307866417808172
Piper28435539256307
RM-Buch-und-Medien-Vertrieb [u.a.]22425825631398
Herder19247759701198
Weltbild18589374388423
Büchergilde Gutenberg17118645061338
Beck16916475130329
Insel-Verl.16114096951231
Dt. Buch-Gemeinschaft14757744287344
S. Fischer13344824518295
Deutscher Taschenbuch-Verlag13310325692233
Fischer-Taschenbuch-Verlag13223125313248
Aufbau-Verl.13077443819342

Only items with no more than 5000 pages:

./json2json.py -f -p "issued_norm,pages_norm,publisher,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912 && $2 <= 5000) {sum[$3]+=$2; count[$3]+=1}} END {for (p in sum) printf("%s\t%s\t%s\t%s\n",  sum[p], count[p], int(sum[p]/count[p]), p)}' \
    | sort -S1G -nr | head -n20
publisherpage sumitemsmean pages
Heyne785958123442335
Rowohlt603343525735234
Goldmann441970114384307
Suhrkamp375075215074248
Dt. Taschenbuch-Verl.314462111719268
Ullstein311705010705291
Reclam307866417808172
Piper28435539256307
Fischer-Taschenbuch-Verl.27727289549290
RM-Buch-und-Medien-Vertrieb [u.a.]22425825631398
Herder19247759701198
Weltbild18589374388423
Büchergilde Gutenberg17118645061338
Beck16916475130329
Insel-Verl.16114096951231
Dt. Buch-Gemeinschaft14757744287344
S. Fischer13344824518295
Deutscher Taschenbuch-Verlag13310325692233
Fischer-Taschenbuch-Verlag13223125313248
Aufbau-Verl.13077443819342

by mean page count

./json2json.py -f -p "issued_norm,pages_norm,publisher,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) {sum[$3]+=$2; count[$3]+=1}} END {for (p in sum) printf("%s\t%s\t%s\t%s\n", sum[p], count[p], int(sum[p]/count[p]), p)}' \
    | sort -S1G -nrk3 | head -n20
publisherpage sumitemsmean pages
Dr.- und Verl.-Ges. Bietigheim96104196104
Gnostische-Bibliothek-Verl.137634268817
Deutscher Sparkassenverlag Stuttgart329513295
Ander320213202
Burke’s Peerage Ltd.286712867
Monte Avila251612516
Juzanbô237012370
Argument-Verl.206100992081
L’ Arachnéen184511845
Bundesanzeiger Verlag349721748
World Islamic Call Soc.163311633
Libraries assocíés162511625
Muze160011600
Ekdoseis Tziola159911599
Ed. Almuzara159511595
Ed. Horizonte158011580
Verlagsanstalt f. Literatur u. Kunst451231504
Everyman’s Libr.149211492
Ministero per i Beni Culturali e Ambientali, Ufficio Centrale per i Beni Archivistici142311423
E.D.A.F.142011420

How is the number of items per publisher related to the mean number of pages per publisher?

./json2json.py -f -p "issued_norm,pages_norm,publisher,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) {sum[$3]+=$2; count[$3]+=1}} END {for (p in sum) printf("%s\t%s\t%s\t%s\n", count[p], sum[p], int(sum[p]/count[p]), p)}' \
          > publisher_page_stats.tsv
reset
set term pngcairo enhanced size 800,600
set out 'publisher_pages.png'

set grid
set datafile separator "\t"
set logscale

set xlabel 'number of items
set ylabel 'mean number of pages per item'

plot 'publisher_page_stats.tsv' using 1:3 with points pt 7 title ''

set term svg enhanced size 800,600
set out 'publisher_pages.svg'
replot

publisher_pages.png

normalisation

Select specific publishers from this list:

Ammann
Aufbau
Berlin Verlag
Blumenbar
Eichborn
Goldmann
Hanser
Heyne
Hoffmann und Campe
Insel
Kiepenheuer & Witsch
Luchterhand Literaturverlag
Manesse
Merve
Nagel & Kimche
Piper
Reclam
Rogner & Bernhard
Rowohlt
Schöffling & Co.
Suhrkamp
Ullstein
Urs Engeler Editor
Verbrecher Verlag
Voland & Quist
Wallstein
Wiesenburg
for publisher in Ammann Aufbau Berlin Blumenbar Eichborn Goldmann Hanser Heyne Campe Insel Kiepenheuer Luchterhand Manesse Merve Kimche Piper Rogner Rowohlt Schöffling Suhrkamp Ullstein Engeler Verbrecher Voland Wallstein Wiesenburg; do
    echo "**** $publisher"
    echo
    echo "| publisher | items | pages | mean pages |"
    grep $publisher publisher_page_stats.tsv | sort -nr | awk -F'\t' '{print "|"$4"|"$1"|"$2"|"$3"|"}'
    echo
done

Cleaning up the publishers now by deleting all rows which should not be regarded the same publisher and then creating a big intermediate file:

./json2json.py -m publisher_map.tsv -f -p "issued_norm,pages_norm,publisher_norm,title,_id,creator_wd.*.name,creator_wd.*.id,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) print $0}' \
> publisher_data.tsv

Ammann

publisheritemspagesmean pages
Ammann484121340250
Ammann-Verl.82667333
Ammann Schweiz AG18787

Aufbau

publisheritemspagesmean pages
Aufbau-Verl.38191307744342
Aufbau-Verlag2132728063341
Aufbau-Taschenbuch-Verl.1364456324334
Aufbau-Taschenbuch440173037393
Aufbau30093119310
Aufbau Taschenbuch14252028366
Aufbau-Bühnen-Vertrieb606496108
Der nationale Aufbau181925106
Arbeitsgemeinschaft f. Kultur u. Aufbau72236319
Aufbau Verl.62474412
Buchkreis f. Besinnung u. Aufbau5790158
Aufbau-Bühnen-Vertrieb G.m.b.H.5541108
Der Nationale Aufbau522945
Aufbau-Bühnen-Vertrieb GmbH432581
ATB, Aufbau Taschenbuch3727242
Aufbau-Tachenbuch-Verl.31626542
Aufbau-Verl31306435
“Der nationale Aufbau”21214607
Buchkreis für Besinnung u. Aufbau19898
Aufbau-Bühnen Vertrieb19797
Aufbau-Bühnenvertrieb G. m. b. H.19292
[Aufbau-Bühnen-Vertrieb]19191
Aufbau-Bühnen-Vertr.19191
Aufbau-Verl. in Komm.17474
Aufbau-Bühnenvertrieb G.m.b.H.17272
Aufbau taschenbuch1602602
Aufbau Verlag1564564
Aufbau-Taschen-Verl.1479479
[Aufbau-Verl. in Komm.]14646
Aufbau - Verl.1363363
atb Aufbau Taschenbuch1359359
[Aufbau-Verl.]1331331
Verlag “Deutscher Aufbau”13131
Der Nationale Aufbau, Verlagsges.12929
atb, Aufbau Taschenbuch1287287
Akadem. Arbeitsausschuß f. Deutschen Aufbau12727
Aufbau Taschenbuch-Verl.1269269
Atb, Aufbau Taschenbuch1254254
Aufbau- Verlag1245245
Aufbau-Taschenbuch-Verl.***51081331239239
Aufbau-Taschenbuchverl.1239239
Arbeitskreis evangelischer Pfarrer f. Frieden u. sozialen Aufbau im Land Brandenburg11919
Aufbau-Taschenbuch-Verlag1190190
Aufbau Verlag GmbH1157157

Berlin

publisheritemspagesmean pages
Berlin-Verl.586169277288
Berliner Taschenbuch-Verl.527157416298
Verl. Das Neue Berlin492138106280
Rowohlt Berlin398103526260
Verlag Das Neue Berlin37498552263
Das Neue Berlin27280989297
Berlin-Verl. Taschenbuch8529749349
Berliner Handpresse84268031
Hanser Berlin6717257257
Bloomsbury Berlin6518634286
BWV, Berliner Wiss.-Verl.5617796317
Berlin Univ. Press5412424230
Berlin-Story-Verl.469657209
Berlin Verlag309868328
Berlin-Ed.262801107
Berlin-Krimi-Verl.256472258
Berliner Verl.245674236
Das Neue Berlin Verl. Ges.245326221
Matthes & Seitz Berlin245204216
Berliner Künstlerprogramm d. DAAD24177073
Verl. für Berlin-Brandenburg226237283
Berlingske223743170
Berlin-Verl. Spitz214814229
Berlin Verlag Taschenbuch196274330
Berlin-Museum1962532
Verl. Das neue Berlin195585293
vbb, Verl. für Berlin-Brandenburg184148230
Berliner Bibliophilen-Abend1764237
Neuer Berliner Buchvertrieb1591561
Berliner Buchversand143949282
Westkreuz-Verl. Berlin/Bonn132896222
Berlin-Krimi-Verl., Be.bra-Verl.123111259
Berlin-Verlag122724227
Das neue Berlin102685268
Verlagshaus Berlin988698
Presse- u. Informationsamt d. Landes Berlin957563
Informationszentrum Berlin, Gedenk- u. Bildungsstätte Stauffenbergstrasse925628
Berliner-Taschenbuch-Verl.92353261
Berlin-Information91589176
DAAD, Berliner Künstlerprogramm870788
Berliner Künstlerprogramm des DAAD840650
BUP, Berlin Univ. Press83508438
Berlin Verl.82591323
Berlinicke81170146
Der Berliner Landesbeauftragte für die Unterlagen des Staatssicherheitsdienstes der Ehem. DDR765092
Berlin-Inst. für Bevölkerung und Entwicklung759184
Berlin-Verlag Spitz6996166
Berliner Bibliophilen Abend634156
GNN-Verl. Sachsen/Berlin613322
wvb, Wiss. Verl. Berlin61138189
Verlag das Neue Berlin5996199
Berlin Story Verlag5930186
Druck- u. Verl. Anst. Berlin5870174
Berliner Verl.-Anst. Union5767153
Friedrich-Ebert-Stiftung, Forum Berlin5543108
Neue Berliner Verlags-Ges.51323264
Galiani Berlin51120224
Buchh. d. Berliner ev. Missionsges.51003200
Palma Publishing Berlin4972243
OEZ-Berlin-Verl.4940235
Berliner Inst. für Vergleichende Sozialforschung47218
Berlin Inst. for Population and Development4698174
dvb, Druck- u. Verlagsanst. Berlin4661165
Buchh. d. Berliner ev. Missionsgesellschaft46015
Berlin-Werbung Berolina417042
Berliner Festspiele415639
Berlin University Press41248312
[Berliner Kulturbuchvertrieb]39531
Verlag für Berlin-Brandenburg3952317
Verlag Das neue Berlin3931310
Das Neue Berlin [Verl. Ges.]3848282
Berliner Verlag3764254
Verl. Neues Berlin3629209
Berliner Inst. für Vgl. Sozialforschung36020
Berlingske Forlag3592197
Buchh. d. Berliner evang. Missionsgesellschaft33812
Dt. Akad. Austauschdienst, Berliner Künstlerprogramm329197
Berlin-Brandenburgische Akad. der Wiss.324381
Konsistorium der Evang. Kirche in Berlin-Brandenburg313444
Evang. Konsistorium Berlin-Brandenburg, Generalkonvent f. Krankenseelsorge312140
Ed. Ost im Verl. Das Neue Berlin31171390
Berlin Historica31020340
Berliner Handpresse bei Claassen29145
Berliner Wissenschafts-Verlag2840420
Edition Berliner Unterwelten im Ch. Links Verlag2762381
Ed. Berliner Unterwelten2762381
Landesvorstand Gross-Berlin d. SED27236
Berliner Taschenbuch.Verl.2700350
Neue Berliner Verlags-Gesellschaft2665332
Springer Berlin2638319
Berlingske Forl.2625312
Berliner Debatte Wiss.-Verl.2623311
BWV, Berliner Wissenschafts-Verlag2574287
Verl. “Berlin-Wien”2561280
Kulturverlag Kadmos Berlin2541270
Rowohlt Berlin***51064392536268
Berliner Handpresse b. Propyläen25226
“Berlin-Wien”2516258
Berliner Taschenbuchverl.2516258
Berliner Börsenzeitung25025
Berliner Taschenbuch-Verl2470235
Verl. Berlin-Wien2453226
[Friedrich-Berlin-Verl.-Ges.]24522
Europa-Verl. Berlin2429214
Berlin-Historica-Verl.2426213
Ges. d. Freunde d. Berliner Philharmonie24020
Berliner Union2393196
Das neue Berlin Verl. Ges.2361180
[Berliner Bibliophilen-Abend]23517
Verlagshaus Axel Springer, Information Berlin23316
Staatl. Museen zu Berlin2322161
Berlin-Ed. im be.bra-Verl.2302151
[Der Theaterverl. Friedrich Berlin]23015
Berlinica2277138
[Der Theaterverlag Friedrich Berlin]22613
Wissenschaftlicher Verlag Berlin2260130
Inst. für Städtebau Berlin d. Dt. Akad. für Städtebau u. Landesplanung22110
Arbeitsgemeinschaft d. Evang. Jugend (AEJ) in d. Bundesrepublik Deutschland u. Berlin West e.V.22110
Heimatdienstverl. [Buchh. d. Berliner ev. Missionsges.]2207103
E. Berlin2207103
Euphorion-Verlag Berlin2201100
Verl. Berliner Union [in Komm.]217185
Volkswirtschaftl. Verl. Berlin-Lichterfelde215879
Landesvorstand Berlin der DKP215678
Berliner Verlagsbüro Biel215376
[Berliner Kommissionsbuchh.]214572
Verlag Berliner Union [in Komm.]213668
Berlin-Institut für Bevölkerung und Entwicklung211557
Berlin. Galerie211457
Berliner Morgenpost, Ullsteinhaus211155
Europa Verl. Berlin21049524
Internat. Inst. of Management, Wissenschaftszentrum Berlin210452
Stiftung Gedenkstätte Berlin-Hohenschönhausen19696
Eulenspiegel-Das-Neue-Berlin-Verl.-Ges.19595
H. P. V.-Berlin G. m. b. H. (Historisch-Politischer Verl.)19494
Berliner Künstlerprogramm/DAAD19393
Lotos Berlin19191
Verein zur Förderung von Community Education in der Bundesrepublik Deutschland und Berlin (West)18989
Werkstatt Berlin 1988188
Landeszentrale f. polit. Bildungsarbeit Berlin18888
Akad.-Verl. Berlin1880880
Verein der Freunde der Staatsbibliothek zu Berlin18787
Pädag. Zentrum Berlin, Referat II E Gesellschaftswiss.18787
Verl. Berliner Union [in Komm. f. Deutschland]18686
Deutsch-Mexikanische Gesellschaft Berlin e.V.18585
Der Berliner Landesbeauftragte für die Unterlagen des Staatssicherheitsdienstes der Ehemaligen DDR18080
Bildungswerk Berlin der Heinrich-Böll-Stiftung18080
Berlin Information17979
Berliner Jugend- u. Kindertheater Genschow-Stobrawa17979
Staatl. Museen zu Berlin, Kunstgewerbemuseum17878
Verein f. d. Geschichte Berlins177
S[ozialistische] E[inheitspartei] D[eutschlands], Bezirksleitg Groß-Berlin177
Berlin : Parey177
Friedrich-Ebert-Stiftung, Landesbüro Berlin17676
[Berliner Kommissionsbuchhandlung]17575
Berliner Theater-Verl. Oesterheld & Co.17272
Generaldirektion der Stiftung Preussische Schlösser und Gärten Berlin-Brandenburg17171
KinderbuchVerl. Berlin17070
Freunde der Erde Berlin17070
Zentrale d. Hausfrauenvereins Groß-Berlin E. V.16767
Werbestelle Berliner graphischer Betriebe e. V.16767
Versuchsanst. f. Statik d. Baukonstruktionen an d. Techn. Hochschule Berlin166
Berlinische Verlagsanst.166
Inst. für Unternehmungsführung im Fachbereich Wirtschaftswiss. d. Freien Univ. Berlin16666
Humanistischer Verb. Deutschlands, Landesverb. Berlin16565
[Berliner Kommiss. Buchh.]16565
Breitkopf & Härtel ; Berlin-Grunewald : Verlagsanstalt für Litteratur u. Kunst (Hermann Klemm)1652652
Europa im Nahen Osten - Der Nahe Osten in Europa c/o Wissenschaftskolleg zu Berlin16464
Die Moschee Berlin der Lahore-Ahmadiyya-Bewegung zur Verbreitung Islamischen Wissens16464
Berlinische Galerie16464
BerlinLine-Entertainment16363
Kinetischer Verlag Berlin15959
DKP Berlin15959
AL - Bereich Berlin-Politik]15959
Generaldirektion d. Staatl. Museen zu Berlin15656
Berliner Krippenverein155
Institut f. Philosophie d. Humboldt-Universität zu Berlin15555
Presse- u. Informationsamt d. FU Berlin15454
Berliner Börsen-Zeitung15454
“Helle Panke” e.V. - Rosa-Luxemburg-Stiftung Berlin15151
Inst. für Genossenschaftswesen an der Humboldt-Univ. zu Berlin15050
Berlinskie gosmuzei, Peredneaziatskij Muzej15050
Wissenschaftszentrum Berlin, Internat. Inst. für Management u. Verwaltung14949
Berlin Story Verl.1491491
Der Präsident des Abgeordnetenhauses von Berlin14848
Buchhandlung d. Berliner ev. Missionsgesellschaft14848
Berliner Unterwelten14848
S[ozialistische] E[inheitspartei] D[eutschlands] Groß-Berlin, Kommission zur Erforschung d. Geschichte d. Berliner Arbeiterbewegung14747
Berliner Tierschutzverein u. Deutscher Lehrer-Tierschutz Verein14646
[Berliner Kommissions-Buchh.]14646
Landesbildstelle Berlin14545
[Berliner Münzblätter]144
Verband Berliner Spezialgeschäfte14444
Evang. Konsistorium Berlin-Brandenburg, Fachkonvent f. Seelsorge im Krankenhaus14444
Verlag des Neue Berlin1422422
Berlin Verl. Taschenbuch1413413
Sozialdemokratische Partei Deutschlands, Landesverb. Groß-Berlin14040
Partner für Berlin, Ges. für Hauptstadt-Marketing14040
Galerie der Berliner Graphikpresse13939
Berliner Handels-Gesellschaft13939
VBB, Verl. für Berlin-Brandenburg1384384
Histor. Komm. zu Berlin13838
[Magistrat v. Groß-Berlin, Abt. f. Volksbildung, Hauptamt Kunst u, Literatur]13737
Berliner Verl. Taschenbuch1367367
Verlag Neues Berlin1362362
Verl. d. Berliner Börsen-Zeitung13535
Konsistorium d. Evang. Kirche in Berlin-Brandenburg (Berlin-West), Fachkonvent für Seelsorge im Krankenhaus13434
Forschungsschwerpunkt Marktprozess u. Unternehmensentwicklung, Wiss.-Zentrum Berlin für Sozialforschung13333
Neue Berliner Verlags-G. m. b. H.1323323
Zentraleinrichtung zur Förderung von Frauenstudien und Frauenforschung an der Freien Univ. Berlin13232
Verein der Berliner Künstler13232
Bundesbeauftragter f. d. Förderg d. Berliner Wirtsch13232
Buchh. d. Berliner ev. Missions-Gesellschaft13232
Berliner Handpresse bei Propyläen13232
Merseburger-Berlin1319319
Verlag d. Brandenburg. u. Berliner Hauptvereins d. Ev. Bundes13131
Landesvorst. Groß-Berlin d. SED, Abt. Kommunalpolitik13131
Konsistorium d. Evang. Kirche in Berlin-Brandenburg (Berlin-West)13131
Jüdische Verlagsanstalt Berlin13131
Staatl. Museen zu Berlin, Islam. Museum13030
Verlag Das Neue Berlin1300300
Jüdische Verl.-Anst. Berlin1298298
Konsistorium d. Evang. Kirche in Berlin-Brandenburg, Fachkonvent für Seelsorge im Krankenhaus12929
INFLA-Berlin, Verein der Deutschlandsammler12828
Verf. Berlin-Wien1280280
Wiss. Verl. Berlin Gaudig und Veit1273273
Sender Freies Berlin12727
Konsistorium d. Evang. Kirche in Berlin-Brandenburg12727
Euphorion Verlag, Berlin12727
Berlin.Krimi.Verl., Be.bra-Verl.1271271
Westkreuz-Verl. Berlin-Bonn1264264
Berliner Debatte1264264
Neue Berliner Verlagsges.1259259
Verein der Berliner Künstlerinnen 18671256256
Stiftung Preußische Schlösser und Gärten Berlin-Brandenburg1256256
Historische Komm. zu Berlin, Pressestelle12525
Berlin Ed.1246246
Neue Berliner Verlagsgesellsch. m. b. H.1243243
Verein f. Geschichte Berlins12424
Forschungszentrum Strukturpolitik (IIMV), Wissenschaftszentrum Berlin für Sozialforschung12424
Verlag “Berlin-Wien”1241241
[Anthroposoph. Bücherstube in Berlin]1238238
Berliner Wiss.-Verl.1228228
Berliner Taschenbuch Verl.1224224
RIAS Berlin, Abt. Presse und Information12222
Landesleitg Groß-Berlin d. Sozialist. Einheitspartei Deutschl.12222
Akad. Auskunftsamt Berlin12222
Berlin : Orell Füssli1220220
Berliner-Taschenbuchverl.1218218
Kunstgewerbemuseum Berlin1217217
Verlag Das Junge Berlin1207207
Karl Dietz Verlag Berlin1207207
TU Berlin, Lehrstuhl f. Entwerfen 612020
Inst. u. Lehrstuhl f. Landschaftsbau u. Gartenkunst, Techn. Univ. Berlin12020
Der Beauftrage des Berliner Senats für Integration und Migration1200200
Berlin ; Bern ; Bruxelles ; New York, NY ; Oxford ; Wien : Lang1199199
bup Berlin University Press1193193
Eher, Zweigniederlassg Berlin1192192
Verl. das Neue Berlin1190190
Bildungswerk d. BBK Berlin1183183
Humboldt-Univ. zu Berlin, Sekt. Rechtswiss., Abt. Weiterbildung und Fernstudium1182182
Histor. Komm. zu Berlin, Pressestelle11818
GEW-Hauptvorstand und die Landesverb. Berlin und Brandenburg11818
Berliner Missionswerk11818
Arbeitskreis Homosexualität in d. ÖTV Berlin11818
Förderkreis Polizeihistorische Sammlung Berlin1178178
vbb, Verlag für Berlin-Brandenburg1176176
Verl. Das Neu Berlin1175175
GEDOK Berlin1175175
W. Berlinicke1174174
Verl. Braune Bücher Berlin C. Rentsch1174174
Berliner Börsen-Zeitung G.m.b.H.11717
Berlin-Verlag Taschenbuch1170170
edition.fotoTAPETA Berlin1167167
Neuer Berliner Buchvertrieb [Kribe-Verl.]1165165
Universitätsbibliothek d. Techn. Univ. Berlin [Vertrieb]1164164
Landesverb. Gross-Berlin d. SED, Abt. Werbung, Presse, Rundfunk11616
Forschungsstelle f. Physik hoher Energien d. Forschungsgemeinschaft d. Deutschen Akademie d. Wissenschaften zu Berlin11616
Druck- u. Verl.-Anst. Berlin1157157
Verlag Berliner Buchversand1156156
Berlin-Ed. im Be.bra-Verl.1156156
Wirtschaftspolitische Abteilg des Bezirks Mitte, Gau Groß-Berlin d. N. S. D. A. P.11515
Kameradschaft Berlin d. ehem. 2. Garde-Res.-Regts [H. Koplin]11515
[Friedrich-Berlin-Verl.]11515
Freunde d. Islam Berlin11515
Berlingska Boktr.11515
Berliner Landesverband d. Vertriebenen11515
www Verl. Berlin1151151
Verlag Berliner Hefte1143143
Landesvorst. d. SED Groß-Berlin [Literaturvertrieb]11414
Berliner Theater- u. Konzert-Agentur GmbH11414
[Berliner Mennoniten-Gemeinde]11414
Berlingske Bogtrykkeri1140140
Landeskomm. Berlin gegen Gewalt1138138
Berliner Evang. Missionsges.1138138
Wiss. Verl. Berlin1132132
Ges. für Nachrichtenerfassung und Nachrichtenverbreitung, Verl.-Ges. für Sachsen/Berlin mbH1130130
Druck- und Verlagsanst. Berlin1130130
Berliner Buch- u. Kunstverl.1127127
Berlin : Teubner1124124
VIB - Veranstaltungen in Berlin1122122
Kameradschaft Berlin d. ehem. 2. Garde-Reserver-Regiments [O. Rodestock]11212
[Kameradschaft Berlin d. ehem. 2. Garde-Reserve-Regiments, O. Rodestock]11212
Institut f. Hochenergiephysik d. Deutschen Akademie d. Wissenschaften zu Berlin11212
Gesellschaft f. dt.-sowjet. Freundschaft, Bezirksvorst. Gross-Berlin11212
Förderverein d. Evang. Sammlung Berlin11212
Berliner Handpresse bei Propyläen-Verlag11212
Berlinische Verlagsanstalt1118118
Bezirksamt Tiergarten von Berlin, Abt. Gesundheitswesen1116116
BWV Berliner Wiss.-Verl.1114114
Humboldt-Univ. zu Berlin, Sekt. Pädagogik, Abt. Weiterbildung und Fernstudium1112112
BHV Berlin historica1112112
Berliner Tierschutz-Verein1112112
Berliner Festspiele GmbH1112112
Initiative Hauptstadt Berlin e.V.11111
Freie Univ. Berlin, Fachbereich Mathematik11111
Berliner Münzblätter11111
Berliner Graphikpresse11111
Dr.-Haus Berlin-Mitte1109109
Berliner Verleger- u. Buchhändlervereinigung e.V.1109109
Berliner Verleger- u. Buchhändlervereinigung1109109
Der Beauftragte des Senats von Berlin für Integration und Migration1104104
Verlag d. Berliner Münzblätter11010
Staatl. Museen zu Berlin, Vorderasiat. Museum11010
Ehemals Staatl. Museen Berlin11010

Blumenbar

publisheritemspagesmean pages
Blumenbar-Verl.368386232
Blumenbar153332222

Eichborn

publisheritemspagesmean pages
Eichborn1593416556261
Eichborn-Verl.82710338
[Eichborn]2588294
Eichborn-Verlag1199199

Goldmann

publisheritemspagesmean pages
Goldmann143854768034331
W. Goldmann8721699249
Goldmann Verlag165778361
[Goldmann]145207371
Halm & Goldmann958364
[Halm & Goldmann]318260
Goldmann-Verl.31299433
Wilhelm Goldmann, Verl.18080
W. Goldmann Verl.16262
Halm u. Goldmann15959
Goldmann Verl.1347347
Karl Goldmann1251251
K. Goldmann1135135
Hahn & Goldmann1128128
Goldmann-Dr.1126126

Hanser

publisheritemspagesmean pages
Hanser38531053766273
Carl Hanser Verlag9829947305
Hanser Berlin6717257257
Fachbuchverl. Leipzig im Hanser-Verl.62795465
Fachbuchverl. Leipzig im Carl-Hanser-Verl.51718343
BHP - Hanser und Partner18080
Hanser Gardner1612612
Fachbuchverlag Leipzig im Carl Hanser Verlag1600600
C. Hanser [u.a.]133
[Hanser]1293293
C. Hanser Verl.1281281
(Hanser)1275275
Hanser **51075161252252
Hanser, Carl122
Wien : Hanser1222222

Heyne

publisheritemspagesmean pages
Heyne234427859581335
Wilhelm Heyne Verlag233105761453
[Heyne]4514955332
Coll. Rolf Heyne229121414
Heyne fliegt52216443
Wilhem Heyne Verlag2526263
Wilhelm Heyne Verlag **51076521475475
Wilhelm Heyne Verlag1416416
Heyne]1365365
Wilh. Heyne Verl.1352352
Heyne***51076521297297
Wilh. Heyne1159159

Campe

publisheritemspagesmean pages
Hoffmann und Campe2172679717312
Hoffmann u. Campe657215995328
Hoffmann & Campe15739303250
Hoffmann & Campe Verl.3677225
Hoffman u. Campe2629314
Hoffmann und Campe Verlag1509509
Jacob Van Campen1403403
Hofmann und Campe1297297
Hoffman & Campe Verl.1267267
Hoffmann ; Campe1223223
Frölich u. Kaufmann im Hoffmann-u.-Campe-Verl.1205205
Hoffmann un[d] Campe1174174
Hoffmann und Campe, Heinrich-Heine-Verl.1164164
Hoffmann un Campe1142142

Insel

publisheritemspagesmean pages
Insel-Verl.69511611409231
Insel-Verlag2016525820260
Insel490158769324
Insel Verlag9323889256
Insel Verl.7313304182
[Insel-Verl.]14135696
Inselverl.134117316
Im Insel-Verlag7957136
Suhrkamp Insel Publ. Boston7914130
[Insel-Verlag]638163
Insel-Verl61765294
im Insel-Verlag4133
Insel-Verl.***51078483528176
Insel -Verl.2803401
Leipzig : Insel-Verl.2382191
Inselverlag2291145
Insel.-Verl.21306653
Insel- Verl.21274637
Insel-Verl. in Komm.212462
Insel. Verlag19191
Insel-Verlag]1661661
Insel[-Verlag]13535
Insel-Verlag.1327327
Insel.Verl.1230230
Verlags-Insel12121
[Insel Verl.]11818
S. Insel11616
Insel-Verlag in Komm.]1146146
Suhrkamp/Insel110321032

Kiepenheuer

publisheritemspagesmean pages
Kiepenheuer und Witsch1507433979287
Kiepenheuer1253325725259
Kiepenheuer & Witsch1237386322312
Kiepenheuer u. Witsch29491417310
G. Kiepenheuer15734399219
Kiepenheuer-Bühnenvertriebs-GmbH62435770
Kiepenheuer Bühnenvertriebs-GmbH57284749
Müller & Kiepenheuer567323130
Müller und Kiepenheuer205516275
Kiepenheuer Bühnenvertriebs-GMBH17123272
Müller u. Kiepenheuer122536211
Kiepenheuer, Bühnenvertriebs-GmbH855969
Kiepenheuer, Abt. Bühnenvertr.549699
Gustav Kiepenheuer4622155
Verlag Kiepenheuer & Witsch41127281
Kiepenheuer und Witsch [in Komm.]3360120
Gustav Kiepenheuer Bühnenvertriebs-GmbH2253126
Kiepenheuer Bühnen-Vertriebs-GmbH219597
Kiepenheuer-Bühnen-Vertriebs-GmbH2248124
Kiepenheuer-Bühnenvertriebs-Ges.215276
Kiepenheuer-Bühnenvertriebs-GMBH2209104
Müller & [J.] Kiepenheuer2335167
Müller & J. Kiepenheuer2400200
Theaterverl. Kiepenheuer u. Witsch215879
Witsch24623
[Kiepenheuer & Witsch in Komm.]1292292
[Kiepenheuer & Witsch]1434434
[Kiepenheuer]1461461
E. Kiepenheuer1231231
Ed. Stephan Witschi1703703
G. Kiepenheuerl1167167
Gustav Kiepenheuer Bühnenvetriebs G.m.b.H.18989
Gustav-Kiepenheuer-Bühnenvertriebs-GmbH19696
Kiepeneheuer & Witsch1173173
Kiepenheuer [& Witsch]1463463
Kiepenheuer Bühnenvertr. G. m. b. H.19292
Kiepenheuer Bühnenvertriebs-GmbH.17979
Kiepenheuer u. Witsch [in Komm.]1183183
Kiepenheuer und& Witsch1285285
Kiepenheuer,1289289
Kiepenheuer, Witsch & Co1250250
Kiepenheuervertriebs-GmbH13838
Verlag d. Dichtung G. Kiepenheuer13434
Verlag Kiepenheuer & Witsch Bühnenvertrieb17171
Verlag Kiepenheuer u. Witsch1520520

Luchterhand

publisheritemspagesmean pages
Luchterhand2387578934242
Luchterhand-Literaturverl.40590944224
Luchterhand-Literatur-Verl.92189243
[Luchterhand-Literaturverl.]61872312
Luchterhand Literaturverl.41128282
Luchterhand Literaturverlag2390195
Luchterhand, Literaturverl.2321160
Luchterhand-Verl.16666

Manesse

publisheritemspagesmean pages
Manesse-Verl.797342248429
Manesse-Verlag19296549502
Manesse Verl.17685037483
Manesse165889368
Manesse Verlag154953330
Manesse Verl. Conzett & Huber73199457
Manesse-Verl. Conzett & Huber21729864

Merve

publisheritemspagesmean pages
Merve-Verl.11917498147
Merve-Verlag486102127
Merve131984152
Merve Verlag4497124
Merve -Verl.***901171109109

Kimche

publisheritemspagesmean pages
Nagel und Kimche30657944189
Nagel & Kimche13129431224
Nagel u. Kimche376968188
; Frauenfeld : Nagel und Kimche18787

Piper

publisheritemspagesmean pages
Piper92562843553307
R. Piper & Co.9421558229
[Piper]114047367
Piper & Co.81346168
R. Piper41246311
Kabel by Piper41021255
Zürich : Piper3824274
R. Piper & Co Verlag2674337
Verl. d. Marées-Gesellschaft R. Piper & Co.18585
Piper ; Zürich1298298
E. Piper12323
E. Piper Ring-Verl.12020
R. Piper & Co1192192
Piper [in Komm.]11919
R. Piper & Co. G. m. b. H.1121121
Piper & The Grüne Kraft1117117
Verl. d. Marées-Gesellschaft Piper1102102

Reclam

publisheritemspagesmean pages
Reclam178083078664172
Ph. Reclam jun.750113159150
Reclam jun.7210903151
Ph. Reclam69397057
Reclam-Verl.213097147
Philipp Reclam jun.182343130
Reclam Leipzig133391260
Phil. Reclam jun.81718214
Verlag von Philipp Reclam jun.760486
[Reclam]57214
Reclam Verl.2423211
[Ph. Reclam]22713
Reclam-Verlag213266
Ph. Reclam jr.16464
Th. Reclam1640640
Philipp Reclam1360360
Reclam u. Verl. “Das neue Deutschland”1344344
Philipp Reclam Jun.1327327
Druck u. Verlag von Philipp Reclam jun.12929
[Ph Reclam jun.]1151151
Reclam (in Trenhandverwaltung)1132132
Philip Reclam junior1128128

Rogner

publisheritemspagesmean pages
Rogner und Bernhard8622700263
Rogner und Bernhard bei Zweitausendeins4820085418
Rogner u. Bernhard338608260
Rogner & Bernhard3210912341
Rogner & Bernhard bei Zweitausendeins113197290
Rogner u. Bernhard bei Zweitausendeins103492349
Kein & Aber, vormals Rogner & Bernhard1320320
Rogner and Bernhard bei Zweitausendeins1302302
Rogner und Bernard1185185

Rowohlt

publisheritemspagesmean pages
Rowohlt257356033435234
Rowohlt-Taschenbuch-Verl.38431184020308
Rowohlt Berlin398103526260
E. Rowohlt21454114252
Rowohlt-Taschenbuch-Verlag15437430243
Rowohlt Taschenbuch Verlag14550687349
Rowohlt Polaris4317294402
Rowohlt-Theater-Verlag375157139
Rowohlt G. m. b. H.216662317
Rowohlt[-Taschenbuch-Verl.]112155195
Rowohlt-Taschenbuchverl.72182311
Rowohlt G.m.b.H.61880313
Ernst Rowohlt5647129
Rowohlt, Theater-Verlag5601120
[E. Rowohlt]517535
Rowohlt-Taschenbuch-Verl.***51088013929309
Rowohlt-Taschenbuch Verl.3832277
Rowohlt-Verl.3580193
Rowohlt Verl.311538
Rowohlt-Taschenbuch-Verl31050350
[Rowohlt-Taschenbuch-Verl.]31044348
Rowohlt Verlag2806403
Rowohlt-Taschenbuch-verl.2632316
Rowohlt Taschenbuch2575287
Rowohlt Berlin***51064392536268
Ernst Rowohlt Verl.2280140
Rowohlt- Taschenbuch-Verlag1511511
Rowohlt Taschenbuch-Verl.1511511
Rowohlt [Verl. G.m.b.H.]1398398
Rowohlt Verl. G. m. b. H.1394394
RowohltTtaschenbuch-Verl.1391391
Rowohlt-Taschenbuch–Verl.1379379
Rowohlts1375375
Rowohlt V.13737
E. Rowohlt Verl.1336336
Rowohlt Hundert Augen1301301
Ernst Rowohlt Verlag1281281
Rowohlt-Taschnebuch-Verl.1252252
[J. Rowohlt]12424
Rowohlt-Taschenbuch-Verl. **51088011235235
Rowohlt-Taschenbuch -Verl.1220220
Rowohlt-Taschenbuch -Verl.***51088011190190
Rowohlt-Taschenbuchverlag1176176
[Rowohlt]11616
Rowohlt-Taschenbuch.Verl.1154154
Rowohlt-Taschenbuch-Ausg.1151151
Rowohlt-Tashenbuch-Verl.1142142
Rowohlt-[Taschenbuch-Verl.]1141141
Rowohlt [G. m. b. H.]1110110

Schöffling

publisheritemspagesmean pages
Schöffling32983966255
Schöffling & Co.143941281
[Schöffling]2579289

Suhrkamp

publisheritemspagesmean pages
Suhrkamp150743750752248
Suhrkamp Verlag7218108251
Suhrkamp-Taschenbuch-Verlag [in Komm.]5313156248
Suhrkamp-Theaterverlag29189265
Jüdischer Verl. im Suhrkamp-Verl.234718205
Suhrkamp-Verl.226175280
Suhrkamp [in Komm.]173611212
S. Fischer Verl. [Suhrkamp]172305135
Suhrkamp-Taschenbuch-Verlag143913279
Suhrkamp Insel Publ. Boston7914130
Suhrkamp-Theaterverl.757381
[Suhrkamp]72803400
Suhrkamp Verl.6700116
Jüdischer Verlag im Suhrkamp Verlag61795299
Suhrkamp-Taschenbuchverlag [in Komm.]4906226
Suhrkamp vorm. S. Fischer4795198
Suhrkamp-Taschenbuch-Verl.3813271
Suhrkamp Publ.2787393
Suhrkamp Publ. New York2484242
Suhrkamp-Taschenbuch- Verlag [in Komm.]2218109
Suhrkamp, Theaterverlag18282
Suhrkamp-Theater-Verl.17575
Suhrkamp Theaterverl.15353
Suhrkamp-Verl. vorm. S. Fischer1507507
Suhrkamp, Theaterverl.14848
Suhrkamp-Taschenbuch-Velag [in Komm.]1338338
Suhrkamp-Verlag1251251
Suhrkamp551211211
S. Fischer [Suhrkamp-Verl.]1109109
Suhrkamp/Insel110321032
S. Fischer Verl. [Suhrkamp.]1102102
Jüdischer Verl. im Suhrkamp-Verl.***986021100100

Ullstein

publisheritemspagesmean pages
Ullstein107053117050291
Ullstein-Taschenbuchverl.19665994336
Ullstein Taschenbücher-Verl.19238487200
Moewig bei Ullstein15339767259
Ullstein A. G.11228946258
Ullstein [A. G.]5916767284
Ullstein A.G.379849266
Ullstein A.-G.317135230
Ullstein [A.G.]266892265
Ullstein-Verl.229888449
Ullstein-Taschenbuch-Verl.176151361
Ullstein-Taschenbücher-Verl.163237202
Ullstein Taschenbücher Verl.152926195
Ullstein [& Co.]82063257
Ullstein [A.-G.]71715245
Econ-Ullstein-List-Verl.62874479
Ullstein & Co.62000333
Ullstein Extra61521253
Ullstein AG4785196
Safari bei Ullstein41151287
[Ullstein & Co.]41100275
Ullstein Taschenbuch Verlag3933311
Fridolin-Verlag Ullstein A.-G.38729
Ullstein [Deutscher Verl.]3838279
Verlag Ullstein3515171
Ullstein]31462487
Ullstein Taschenbuchverl.2635317
Ullstein extra2616308
[Ullstein]2564282
Propyläen-Verl. Ullstein2463231
Verlag Ullstein GmbH2446223
Ullstein Taschenbuch-Verl.2387193
Ullstein Mosby218190
Ullstein & Kindler213567
Berliner Morgenpost, Ullsteinhaus211155
Ullstein/Kindler19595
Ullsteinhaus16464
Bauwelt-Verlag Ullstein [A. G.]16363
Ullstein-Kindler1562562
Verlag der Ullstein-Schnittmuster14848
Deutscher Verl. d. Ullstein A.G.1476476
[Ullstein A.G.]14242
Slowo [Verlagsgesellschaft, durch Ullstein & Co.]1359359
Slowo-Verlagsgesellschaft [durch Ullstein & Co]1333333
Bauwelt-Verl. [Ullstein]13232
Ullstein [Taschenbücher Verl.]1313313
Ullstein-Taschenbuch1301301
Ullsteine1285285
Ullstein Verl.1281281
Rot-Blau Verl. Ullstein1279279
Rot-Blau-Verl. [Ullstein]1247247
Ullstein Bücher1246246
Ullstein, Kindler1215215
Ullstein-Taschenbücher-Verlag1193193
Ullstein **51091361188188
Ullstein Taschenbücher- Verl.1173173
Verl. Ullstein1171171
Slowo Verlagsgesellschaft [durch Ullstein & Co.]1151151
Ullstein Taschen-bücher Verl.1149149
Ullstein Taschenbücherverl.1127127
Verl. d. Grünen Post Ullstein1119119

Engeler

publisheritemspagesmean pages
Engeler8915134170
[Engeler]101263126
Engeler-Verlag4496124
U. Engeler1197197
[Urs Engeler]1122122

Verbrecher

publisheritemspagesmean pages
Verbrecher-Verl.11928389238
Verbrecher Verlag238541371
Verbrecher1255255
Verbrecher Verl.1199199

Voland

publisheritemspagesmean pages
Voland & Quist183590199
Voland163457216
Verlag Voland & Quist3771257
Voland und Quist1171171
Verlag Voland & Quist GmbH1157157

Wallstein

publisheritemspagesmean pages
Wallstein-Verl.498127736256
Wallstein Verlag4712373263
Wallstein153425228
D A Wallstein2864432
Wallstein Verl.1526526
[Wallstein-Verl.]13636

There was likely a TAB between “D” and “A” in “D A Wallstein” which needs to be fixed.

Wiesenburg

publisheritemspagesmean pages
Wiesenburg-Verl.12317655143
Wiesenburg152046136
Wiesenburg Verlag91342149

top normalised publishers

These rankings only comprise the normalised publishers!

TODO: The rankings by page count and mean page count are currently without the 5000 pages limit … but only Goldmann is affected due to the error with Tim.

by item count

cut -f3 publisher_data.tsv | sort -S1G | uniq -c | sort -nr
publisheritems
Rowohlt30680
Heyne23728
Reclam18786
Suhrkamp15383
Goldmann14508
Ullstein11685
Insel9697
Piper9388
Aufbau8302
Hanser4025
Kiepenheuer & Witsch3056
Hoffmann und Campe2999
Luchterhand Literaturverlag2816
Eichborn1604
Manesse1205
Berlin Verlag636
Wallstein562
Ammann493
Nagel & Kimche475
Schöffling & Co.345
Rogner & Bernhard222
Merve185
Wiesenburg147
Verbrecher Verlag144
Urs Engeler Editor105
Blumenbar51
Voland & Quist39

by page count

awk -F'\t' '{sum[$3]+=$2; count[$3]+=1} END {for (p in sum) printf("%s\t%s\t%s\t%s\n",  sum[p], count[p], int(sum[p]/count[p]), p)}'  publisher_data.tsv \
    | sort -S1G -nr
publisherpage sumitemsmean pages
Heyne798288723728336
Rowohlt751306930680244
Goldmann480250614508331
Suhrkamp381832615383248
Ullstein337918311685289
Reclam322067818786171
Piper28750869388306
Aufbau28289518302340
Insel23480339697242
Hanser11022984025273
Hoffmann und Campe9383022999312
Kiepenheuer & Witsch9160343056299
Luchterhand Literaturverlag6758442816240
Manesse5396041205447
Eichborn4200531604261
Berlin Verlag184460636290
Wallstein144096562256
Ammann124094493251
Nagel & Kimche94430475198
Schöffling & Co.88486345256
Rogner & Bernhard69481222312
Verbrecher Verlag37384144259
Merve26190185141
Wiesenburg21043147143
Urs Engeler Editor17212105163
Blumenbar1171851229
Voland & Quist814639208

by mean page count

awk -F'\t' '{sum[$3]+=$2; count[$3]+=1} END {for (p in sum) printf("%s\t%s\t%s\t%s\n",  sum[p], count[p], int(sum[p]/count[p]), p)}'  publisher_data.tsv \
    | sort -S1G -nrk3
publisherpage sumitemsmean pages
Manesse5396041205447
Aufbau28289518302340
Heyne798288723728336
Goldmann480250614508331
Hoffmann und Campe9383022999312
Rogner & Bernhard69481222312
Piper28750869388306
Kiepenheuer & Witsch9160343056299
Berlin Verlag184460636290
Ullstein337918311685289
Hanser11022984025273
Eichborn4200531604261
Verbrecher Verlag37384144259
Schöffling & Co.88486345256
Wallstein144096562256
Ammann124094493251
Suhrkamp381832615383248
Rowohlt751306930680244
Insel23480339697242
Luchterhand Literaturverlag6758442816240
Blumenbar1171851229
Voland & Quist814639208
Nagel & Kimche94430475198
Reclam322067818786171
Urs Engeler Editor17212105163
Wiesenburg21043147143
Merve26190185141

Average page count per year per publisher:

awk -F'\t' '{print int($1/10)"\t"$3"\t"$2}' publisher_data.tsv | sort | datamash -g1,2 mean 3 median 3 | sed "s/,/./g" | sort -n > publisher_pages_decades.tsv
reset
set encoding utf8
set term pngcairo enhanced size 800,600
set out 'publisher_pages_decades.png'

set grid
set datafile separator "\t"
set xlabel 'year'
set ylabel 'median number of pages'
set key top left horizontal maxcols 4

plot \
  '< grep Rowohlt  publisher_pages_decades.tsv' using ($1*10):4 with linespoints pt 7 lw 2 title 'Rowohlt',\
  '< grep Heyne    publisher_pages_decades.tsv' using ($1*10):4 with linespoints pt 7 lw 2 title 'Heyne',\
  '< grep Reclam   publisher_pages_decades.tsv' using ($1*10):4 with linespoints pt 7 lw 2 title 'Reclam',\
  '< grep Suhrkamp publisher_pages_decades.tsv' using ($1*10):4 with linespoints pt 7 lw 2 title 'Suhrkamp',\
  '< grep Goldmann publisher_pages_decades.tsv' using ($1*10):4 with linespoints pt 7 lw 2 title 'Goldmann',\
  '< grep Ullstein publisher_pages_decades.tsv' using ($1*10):4 with linespoints pt 7 lw 2 title 'Ullstein',\
  '< grep Insel    publisher_pages_decades.tsv' using ($1*10):4 with linespoints pt 7 lw 2 title 'Insel',\
  '< grep Piper    publisher_pages_decades.tsv' using ($1*10):4 with linespoints pt 7 lw 2 title 'Piper',\
  '< grep Aufbau   publisher_pages_decades.tsv' using ($1*10):4 with linespoints pt 8 lw 2 title 'Aufbau',\
  '< grep Hanser   publisher_pages_decades.tsv' using ($1*10):4 with linespoints pt 8 lw 2 title 'Hanser'

set term svg enhanced size 800,600
set out 'publisher_pages_decades.svg'
replot

publisher_pages_decades.png

ranking per publisher

Iterate over publishers:

for publisher in $(awk -F'\t' '{print $2}' publisher_map.tsv | sort -u | sed "s/ /###/g"); do
  # get publisher name
  publisher=$(echo $publisher | sed "s/###/ /g")
  #echo "$publisher\t" $(awk -F'\t' -v p="$publisher" '{if ($3 == p) print $2"\t hier dann Titel, Autor, Jahr"}' publisher_data.tsv | wc -l)
  # extract all works
  echo "\n**** $publisher\n"
  echo "| pages | author: title (year) |"
  awk -F'\t' -v p="$publisher" '{if ($3 == p) print "| "$2" | [[https://www.wikidata.org/wiki/"$7"]["$6"]]: [[http://d-nb.info/"$5"]["$4"]] ("$1")"}' publisher_data.tsv | sort -t'|' -nrk2 | head -n20
done

TODO: How to deal with duplicates due to different editions of the same work?

Ammann

pagesauthor: title (year)
1271Fyodor Dostoyevsky: Die Brüder Karamasow (2003)
1013Baltasar Gracián: Das Kritikon (2001)
1007Ulrich Holbein: Narratorium (2008)
962Fyodor Dostoyevsky: Böse Geister (1998)
909Fyodor Dostoyevsky: Der Idiot (1996)
829Fyodor Dostoyevsky: Ein grüner Junge (2006)
781Wole Soyinka: Brich auf in früher Dämmerung (2008)
776Fernando Pessoa: Poesia (2007)
766Fyodor Dostoyevsky: Verbrechen und Strafe (1994)
680Fernando Pessoa: Das Buch der Unruhe des Hilfsbuchhalters Fernando Soares (2010)
661Ralph Ellison: Der unsichtbare Mann (1995)
652Antonio Moresco: Aufbrüche (2005)
647Wilfried Meichtry: Verliebte Feinde (2007)
631Éric Hazan: Die Erfindung von Paris (2006)
630Ralph Dutli: Meine Zeit, mein Tier (2003)
607Svend Aage Madsen: Sieben Generationen Wahnsinn (2000)
576Constantine P. Cavafy: Das Gesamtwerk (1997)
573Fernando Pessoa: Das Buch der Unruhe des Hilfsbuchhalters Bernardo Soares (2008)
573Fernando Pessoa: Das Buch der Unruhe des Hilfsbuchhalters Bernardo Soares (2006)
573Fernando Pessoa: Das Buch der Unruhe des Hilfsbuchhalters Bernardo Soares (2003)

Aufbau

pagesauthor: title (year)
1359Vikram Chandra: Der Pate von Bombay (2009)
1291Leo Tolstoy: Krieg und Frieden (2010)
1286Aleksey Nikolayevich Tolstoy: Der Leidensweg (1959)
1286Aleksey Nikolayevich Tolstoy: Der Leidensweg (1955)
1243Hans Fallada: Wolf unter Wölfen (2011)
1227Leo Tolstoy: Anna Karenina (2008)
1211Friedrich Gorenstein: Der Platz (1995)
1200Fyodor Dostoyevsky: Die Brüder Karamasow (2008)
1183Leo Tolstoy: Anna Karenina (1996)
1174Georg Wilhelm Friedrich Hegel: Ästhetik (1955)
1133Miquel de Palol: Im Garten der sieben Dämmerungen (2007)
1133Miquel de Palol: Der Garten der sieben Dämmerungen (1999)
1087Leo Tolstoy: Krieg und Frieden (2008)
1086William Shakespeare: Historien (2009)
1066William Shakespeare: Tragödien (2009)
1054Aleksey Nikolayevich Tolstoy: Peter der Erste (1952)
1034Thomas Mann: Der Zauberberg (1953)
1031Hans Fallada: Wolf unter den Wölfen (1957)
1028Thomas Mann: Der Zauberberg (1979)
1028Thomas Mann: Der Zauberberg (1965)

Berlin Verlag

pagesauthor: title (year)
1065Harold Bloom: Shakespeare (2000)
1036Orlando Figes: Die Flüsterer (2008)
976David Remnick: Barack Obama (2010)
975Orlando Figes: Die Tragödie eines Volkes (2008)
975Orlando Figes: Die Tragödie eines Volkes (1998)
975Orlando Figes: Russland (2014)
920Péter Esterházy: Harmonia Caelestis (2003)
920Péter Esterházy: Harmonia caelestis (2001)
888Péter Esterházy: Einführung in die schöne Literatur (2006)
789Ingo Schulze: Neue Leben (2005)
781Elvis Costello: Unfaithful music - mein Leben (2015)
747Orlando Figes: Krimkrieg (2011)
745Orlando Figes: Krimkrieg (2014)
729Nadine Gordimer: Erlebte Zeiten (2013)
720Orlando Figes: Nataschas Tanz (2003)
720Orlando Figes: Nataschas Tanz (2011)
713Steven Pinker: Das unbeschriebene Blatt (2003)
693Margaret Atwood: Der blinde Mörder (2000)
681Richard Ford: Die Lage des Landes (2007)
652Kerstin Decker: Die Schwester (2016)

Blumenbar

pagesauthor: title (year)
429Tony Parsons: Als wir unsterblich waren (2007)
428Joseba Sarrionandia: Der gefrorene Mann (2007)
424Sebastian Horsley: Dandy in der Unterwelt (2009)
415Edan Lepucki: California (2015)
349Murathan Mungan: Städte aus Frauen (2010)
333B. J. Novak: Cornflakes mit Johnny Depp (2014)
325Alban Lefranc: Angriffe (2008)
323Hunter S. Thompson: Rum Diary (2010)
319Paul Beatty: Slumberland (2009)
318Imran Ayata: Mein Name ist Revolution (2011)
318Leonard Cohen: Das Lieblingsspiel (2009)
317Raul Zelik: Berliner Verhältnisse (2005)
315Alexander Wall, Ingo Niermann: Deutscher Sohn (2010)
310Franz Xaver Karl: Starschnitt (2004)
286Raul Zelik: Der bewaffnete Freund (2007)
283Hunter S. Thompson: The rum diary (2004)
269Wolfgang Schmidbauer: Das Buch der Ängste (2007)
268Tom Kummer: Blow up (2007)
258Hans-Peter Kunisch: Die Verlängerung des Markts in den Abend hinein (2006)
257Thomas Palzer: Ruin (2005)

Eichborn

pagesauthor: title (year)
1814Urs Richle: Der weisse Chauffeur (1996)
1222Leo Tolstoy: Krieg und Frieden (2003)
1081Rolf Vollmann: Die wunderbaren Falschmünzer (1997)
954Paul Verhaeghen: Omega minor (2006)
941Alexander von Humboldt: Kosmos (2004)
941Alexander von Humboldt: Kosmos (2004)
852Laurence Sterne: Leben und Ansichten von Tristram Shandy, Gentleman (2006)
827Robert Kurz: Schwarzbuch Kapitalismus (2009)
816Robert Kurz: Schwarzbuch Kapitalismus (1999)
813Max Aub: Bittere Mandeln (2003)
798Faye Kellerman: Becca (1993)
774Michael Roes: Rubʿ al-Khali - leeres Viertel (1996)
762Hans Jakob Christoffel von Grimmelshausen: Der abenteuerliche Simplicissimus deutsch (2009)
762Hans Jakob Christoffel von Grimmelshausen: Der abenteuerliche Simplicissimus deutsch (2009)
741Hédi Kaddour: Waltenberg (2009)
735Steffen Kopetzky: Grand Tour oder die Nacht der Großen Complication (2002)
731Gustave Flaubert: Universalenzyklopädie der menschlichen Dummheit (2004)
720Dietrich Schwanitz: Bildung (2002)
702Walter Moers: Die 13 1/2 Leben des Käpt’n Blaubär (1998)
671Neil Gaiman: American gods (2015)

Goldmann

pagesauthor: title (year)
348333Colleen McCullough: Tim (1992)
1512Stefan Niggemeier, Michael Reufsteck: Das Fernsehlexikon (2005)
1469Lothar-Günther Buchheim: Die Festung (1997)
1355Alan Bullock: Hitler und Stalin (1999)
1340Alan Bullock: Hitler und Stalin (1998)
1340Alan Bullock: Hitler und Stalin (1993)
1332Margaret George: Heinrich VIII. (2001)
1332Margaret George: Heinrich VIII. (1999)
1332Margaret George: Heinrich VIII. (1997)
1332Margaret George: Heinrich VIII., mein Leben (1991)
1326Dan Simmons: Endymion (2003)
1313Bhagwan Shree Rajneesh: Das Buch der Geheimnisse (2009)
1293Rainer Maria Rilke: Rilke reloaded (2004)
1278Peter Watson: Ideen (2008)
1271James Clavell: Noble House (2002)
1247James Clavell: Gai-jin (2003)
1247James Clavell: Gai-jin (1997)
1247James Clavell: Gai-jin (1995)
1240William Gaddis: Die Fälschung der Welt (2000)
1225James Clavell: Shōgun (2002)

Hanser

pagesauthor: title (year)
1672Joseph Freiherr von Eichendorff: Werke (1971)
1606Joseph Freiherr von Eichendorff: Werke (1959)
1590Joseph Freiherr von Eichendorff: Werke in einem Band (1955)
1511Eduard Mörike: Sämtliche Werke (1976)
1511Eduard Mörike: Sämtliche Werke (1964)
1465Jaan Kross: Das Leben des Balthasar Rüssow (1995)
1462Eduard Mörike: Sämtliche Werke (1954)
1452Horst Bienek: Gleiwitz (2000)
1439Gottfried August Bürger: Sämtliche Werke (1987)
1433Bjarne Stroustrup: Die C++-Programmiersprache (2015)
1403Emily Dickinson: Sämtliche Gedichte (2015)
1378Friedrich Gottlieb Klopstock: Ausgewählte Werke (1969)
1378Friedrich Gottlieb Klopstock: Ausgewählte Werke (1962)
1301Johann Wolfgang von Goethe: Briefe (1958)
1284Leo Tolstoy: Anna Karenina (2009)
1257Johann Wolfgang von Goethe: Italienische Reise (1994)
1257Johann Wolfgang von Goethe: Italienische Reise (1994)
1232Jürgen Plate: Der Perl-Programmierer (2010)
1228Navid Kermani: Dein Name (2011)
1228John Cowper Powys: Glastonbury romance (1995)

Heyne

pagesauthor: title (year)
2006Robert M. Parker, Jr.: Parker’s Wein-Guide (2000)
1997Vikram Seth: Eine gute Partie (1999)
1711Stephen King: The stand (2016)
1549Anne Bishop: Die schwarzen Juwelen (2011)
1533Stephen King: Es (2011)
1530Sergey Lukyanenko: Die Wächter-Trilogie (2008)
1424Stan Nicholls: Die Orks - die Rückkehr (2012)
1408Dan Abnett: Ravenor (2010)
1407Bernard Werber: Die Invasion (2010)
1405Dan Simmons: Endymion (2013)
1405Dan Simmons: Die Hyperion-Gesänge (2013)
1349Dan Abnett: Eisenhorn (2012)
1324Guillermo del Toro: Die Saat (2016)
1307Hans Joachim Alpers: Deutschland in den Schatten (2003)
1307Nora Roberts: Die Garten-Eden-Trilogie (2008)
1291John Grisham: Die Jury (2001)
1280Licia Troisi: Die Drachenkämpferin (2012)
1279Kim Newman: Die Vampire (2009)
1279Stephen King: Die Arena (2009)
1279Stephen King: Die Arena (2011)

Hoffmann und Campe

pagesauthor: title (year)
2880Doris Gercke: Kein fremder Land (1993)
1535Siegfried Lenz: Die Erzählungen (2006)
1469Lothar-Günther Buchheim: Die Festung (1995)
1469Lothar-Günther Buchheim: Die Festung (1995)
1421Vikram Seth: Eine gute Partie (1995)
1421Vikram Seth: Eine gute Partie (1995)
1399Attila Csampai, Dietmar Holland: Opernführer (1995)
1399Attila Csampai, Dietmar Holland: Opernführer (1994)
1399Attila Csampai, Dietmar Holland: Opernführer (1993)
1399Attila Csampai, Dietmar Holland: Opernführer (1989)
1151Bob Dylan: Lyrics (2004)
1085Henrik Ibsen: Schauspiele (1977)
1085Henrik Ibsen: Schauspiele (1973)
1085Henrik Ibsen: Schauspiele (1968)
1021Ernst Krenek: Im Atem der Zeit (1998)
955Tom Clancy: Befehl von oben (1997)
941Ludwig Tieck: Werke in einem Band (1967)
926Herman Wouk: Der Feuersturm (1972)
926Herman Wouk: Der Feuersturm (1972)
901Richard Wagner: Die Musikdramen (1971)

Insel

pagesauthor: title (year)
1646Bertolt Brecht: Die Gedichte (2008)
1395Gottfried Keller: Der grüne Heinrich (2005)
1388Bertolt Brecht: Die Gedichte (2003)
1343Friedrich Hölderlin: Sämtliche Werke (1965)
1343Friedrich Hölderlin: Sämtliche Werke (1961)
1343Friedrich Hölderlin: Sämtliche Werke (1965)
1267Martin Andersen Nexø: Pelle, der Eroberer (1926)
1256Johann Wolfgang von Goethe: Goethes Gedichte in zeitlicher Folge (1995)
1256Johann Wolfgang von Goethe: Goethes Gedichte in zeitlicher Folge (1992)
1256Johann Wolfgang von Goethe: Goethes Gedichte in zeitlicher Folge (1990)
1256Johann Wolfgang von Goethe: Goethes Gedichte in zeitlicher Folge (1982)
1256Johann Wolfgang von Goethe: Goethes Gedichte in zeitlicher Folge (1988)
1249Johann Wolfgang von Goethe: Gedichte (1998)
1249Johann Wolfgang von Goethe: Gedichte (1995)
1249Johann Wolfgang von Goethe: Gedichte (1992)
1231Charles Dickens: David Copperfield (1996)
1231Charles Dickens: David Copperfield (1993)
1231Charles Dickens: David Copperfield (1991)
1231Charles Dickens: David Copperfield (1989)
1231Charles Dickens: David Copperfield (1987)
1231Charles Dickens: David Copperfield (1983)
1231Charles Dickens: David Copperfield (1985)
1228Henry Fielding: Tom Jones (2007)
1204Leo Tolstoy: Anna Karenina (2010)
1204Leo Tolstoy: Anna Karenina (2006)
1204Leo Tolstoy: Anna Karenina (2003)
1204Leo Tolstoy: Anna Karenina (1966)
1204Leo Tolstoy: Anna Karenina (2012)
1200Alexandre Dumas: Der Graf von Monte Christo (2010)
1200Alexandre Dumas: Der Graf von Monte Christo (2004)
1200Alexandre Dumas: Der Graf von Monte Christo (1998)
1188Heinrich von Kleist: Sämtliche Werke (1942)
1187Alexander Pushkin: Die Gedichte (1999)
1187Heinrich von Kleist: Sämtliche Werke (1927)
1185Johann Wolfgang von Goethe, Friedrich Schiller: Der Briefwechsel zwischen Schiller und Goethe (2005)
1185Johann Wolfgang von Goethe, Friedrich Schiller: Der Briefwechsel zwischen Schiller und Goethe (2005)
1141Johann Wolfgang von Goethe: Sämtliche Gedichte (2007)
1132Rainer Maria Rilke: Die Gedichte (1998)
1132Rainer Maria Rilke: Die Gedichte (1995)
1132Rainer Maria Rilke: Die Gedichte (1993)

Kiepenheuer & Witsch

pagesauthor: title (year)
1547David Foster Wallace: Unendlicher Spaß (2009)
1320Frank Schätzing: Limit (2009)
1196Hans-Peter Martin, Hans Weiss, Kurt Langbein: Bittere Pillen (1988)
1187Hans Weiss: 3 x täglich (2003)
1174William L. Shirer: Aufstieg und Fall des Dritten Reiches (1961)
1163Hans-Peter Martin, Hans Weiss, Kurt Langbein: Bittere Pillen (1985)
1087James George Frazer: Der goldene Zweig (1968)
1055Emine Sevgi Özdamar: Sonne auf halbem Weg (2006)
1035Manès Sperber: Wie eine Träne im Ozean (1965)
1035Manès Sperber: Wie eine Träne im Ozean (1961)
1033Erwin Strittmatter: Der Laden (1989)
1024Veit Valentin: Weltgeschichte (1952)
1012Heinrich Böll: Erzählungen (1994)
1001René Schickele: Das Erbe am Rhein (1965)
997Frank Schätzing: Der Schwarm (2004)
992William Deakin: Die brutale Freundschaft (1964)
969Hans-Peter Martin, Hans Weiss, Kurt Langbein: Bittere Pillen (1990)
965Don DeLillo: Unterwelt (1998)
964Frank Schätzing: Breaking News (2014)
892Maxim Biller: Biografie (2016)

Luchterhand Literaturverlag

pagesauthor: title (year)
7969António Lobo Antunes: Fado Alexandrino (2002)
1157Günter Grass: Danziger Trilogie (1980)
1155Franz Klein, Bruno Schmidt-Bleibtreu: Kommentar zum Grundgesetz für die Bundesrepublik Deutschland (1975)
1155Franz Klein, Bruno Schmidt-Bleibtreu: Kommentar zum Grundgesetz für die Bundesrepublik Deutschland (1973)
1055Leni Yahil: Die Shoah (1998)
1012Karl Otten: Schrei und Bekenntnis (1962)
1012Karl Otten: Schrei und Bekenntnis (1959)
995Franz Klein, Bruno Schmidt-Bleibtreu: Kommentar zum Grundgesetz für die Bundesrepublik Deutschland (1970)
956Christa Wolf: Die Dimension des Autors (1987)
956Christa Wolf: Die Dimension des Autors (1987)
925Charles Chadwick: Ein unauffälliger Mann (2007)
921Gerd Eidam: Unternehmen und Strafe (2008)
884Hans-Peter Schwarz: Vom Reich zur Bundesrepublik (1966)
878Petrarch: Das lyrische Werk (1958)
873Wolfgang Kleiber: Schätzung und Ermittlung von Grundstückswerten (1996)
859Russell Banks: John Brown, mein Vater (2000)
854Pablo Neruda: [[http://d-nb.info/770425313][Dichtungen {1919 - {1965 [neunzehnhundertneunzehn bis neunzehnhundertfünfundsechzig]]] (1977)
841Richard Bausch: Die Kannibalen (2004)
837Yvan Goll: Dichtungen (1968)
837Yvan Goll: Dichtungen (1960)

Manesse

pagesauthor: title (year)
1347Victor Hugo: Die Elenden (1995)
1347Victor Hugo: Die Elenden (1993)
1347Victor Hugo: Die Elenden (1991)
1347Victor Hugo: Die Elenden (1986)
1347Victor Hugo: Die Elenden (1985)
1347Victor Hugo: Die Elenden (1968)
1282Benito Pérez Galdós: Fortunata und Jacinta (1961)
1257Ivan Goncharov: Die Schlucht (1959)
1236Fyodor Dostoyevsky: Die Brüder Karamasow (1964)
1230Fyodor Dostoyevsky: Die Brüder Karamasow (1994)
1230Fyodor Dostoyevsky: Die Brüder Karamasow (1987)
1197Dante Alighieri: Die Göttliche Komödie (1963)
1196Charles Dickens: David Copperfield (1994)
1196Charles Dickens: David Copperfield (1961)
1195Charles Dickens: David Copperfield (1987)
1193Thomas Wolfe: Von Zeit und Fluss (2014)
1193Dante Alighieri: Die göttliche Komödie (1995)
1193Dante Alighieri: Die göttliche Komödie (1990)
1192Dante Alighieri: Die göttliche Komödie (2004)
1166Gottfried Heinrich Handelmann: Geschichte von Brasilien (1987)

Merve

pagesauthor: title (year)
524Konradin Leiner: Drachensaat (2000)
432Thomas Kapielski: Sozialmanierismus (2001)
384Michel de Certeau: Kunst des Handelns (1988)
383Walter Seitter: Distante Siegfried-Paraphrasen (1993)
331Friedrich Kittler: Optische Medien (2002)
317John Cage: Für die Vögel (1984)
312Michel Onfray: Theorie des verliebten Körpers (2001)
300Michel Serres, Bruno Latour: Aufklärungen (2008)
294Friedrich Kittler: Philosophien der Literatur (2013)
279Armen Avanessian: Metanoia (2014)
270François Jullien: Über die Wirksamkeit (1999)
270Henning Schmidgen: Die Helmholtz-Kurven (2009)
257Michel Serres: Atlas (2005)
255Harald Szeemann: Individuelle Mythologien (1985)
253Armen Avanessian: Überschrift (2015)
239Harald Szeemann: Museum der Obsessionen (1981)
232Michel Foucault: Dispositive der Macht (1978)
231François Jullien: Dialog über die Moral (2003)
230Karl Jaspers: Strindberg und van Gogh (1998)
223Felix Philipp Ingold: Das Buch im Buch (1988)

Nagel & Kimche

pagesauthor: title (year)
772Charles Lewinsky: Melnitz (2006)
647Wilfried Meichtry: Verliebte Feinde (2012)
555Jakob Schaffner: Johannes (2005)
539Charles Lewinsky: Gerron (2011)
536Anne-Laure Bondoux: Malva (2007)
459Francine Prose: Das Leben der Musen (2004)
457Enrique Vila-Matas: Doktor Pasavento (2007)
455Milena Moser: Möchtegern (2010)
443John Fusco: Das Gesetz der Familie (2003)
442Simon Werle: Der Schnee der Jahre (2003)
429Marianne Curley: Die Prophezeiung der Auserwählten (2006)
425Gabriel Chevallier: Heldenangst (2010)
415Francine Prose: Durchtrieben (2001)
411Eduardo Mendoza Garriga: Katzenkrieg (2012)
409Hermann Burger: Schilten (2009)
408Pinkas Braun: Vorspiel (2008)
399Dara Horn: Ausgelöscht sei der Tag (2002)
397Charles Lewinsky: Kastelau (2014)
396Noah Hawley: Der Vater des Attentäters (2014)
396Charles Lewinsky: Andersen (2016)

Piper

pagesauthor: title (year)
1956Hans Küng: Das Christentum (1999)
1865Terry Pratchett: Die Wissenschaft der Scheibenwelt (2016)
1614Fyodor Dostoyevsky: Dostojewski für alle (1981)
1612Fyodor Dostoyevsky: Die Brüder Karamasoff (1914)
1591Michael Peinkofer: Orks (2011)
1533Alexei Jurjewitsch Pechow: Schatten (2014)
1471Fyodor Dostoyevsky: Die Brüder Karamasoff (1949)
1469Lothar-Günther Buchheim: Die Festung (2005)
1469Lothar-Günther Buchheim: Die Festung (2005)
1469Lothar-Günther Buchheim: Die Festung (2005)
1404Hugh Howey: Silo (2016)
1325Fyodor Dostoyevsky: Die Brüder Karamasoff (2008)
1325Fyodor Dostoyevsky: Die Brüder Karamasoff (2008)
1325Fyodor Dostoyevsky: Die Brüder Karamasoff (2004)
1325Fyodor Dostoyevsky: Die Brüder Karamasoff (1999)
1325Fyodor Dostoyevsky: Die Brüder Karamasoff (1996)
1325Fyodor Dostoyevsky: Die Brüder Karamasoff (1994)
1325Fyodor Dostoyevsky: Die Brüder Karamasoff (1994)
1325Fyodor Dostoyevsky: Die Brüder Karamasoff (1990)
1325Fyodor Dostoyevsky: Die Brüder Karamasoff (1987)

Reclam

pagesauthor: title (year)
1360Adalbert Stifter: Studien (2007)
1319Wu Cheng’en: Die Reise in den Westen (2016)
1261Johann Wolfgang von Goethe: Dichtung und Wahrheit (2012)
1261Johann Wolfgang von Goethe: Dichtung und Wahrheit (2012)
1260Johann Wolfgang von Goethe: Dichtung und Wahrheit (1998)
1175George Eliot: Middlemarch (1985)
1175George Eliot: Middlemarch (1985)
1166Johann Wolfgang von Goethe: Gedichte (2008)
1166Johann Wolfgang von Goethe: Gedichte (2001)
1150William Shakespeare: Dramen (2014)
1117Heinrich Heine: Sämtliche Gedichte (2006)
1117Heinrich Heine: Sämtliche Gedichte (1997)
1117Heinrich Heine: Sämtliche Gedichte (2014)
1114Ovid: Metamorphosen (2010)
1102Gustav Schwab: Die schönsten Sagen des klassischen Altertums (2016)
1094Johann Wolfgang von Goethe: Faust-Dichtungen (2010)
1087Volker Meid: Reclams Lexikon der deutschsprachigen Autoren (2006)
1077Thomas Hobbes: Leviathan (2013)
1072Hans Renner: Reclams Konzertführer (1976)
1071Hans Renner: Reclams Konzertführer (1994)

Rogner & Bernhard

pagesauthor: title (year)
1196Tom Sharpe: Neue Sharpe-Sachen (1999)
1030Tom Sharpe: Sharpe-Sachen (1987)
929Douglas Adams: Per Anhalter durch die Galaxis (2007)
929Douglas Adams: Per Anhalter durch die Galaxis (2006)
912William Kotzwinkle: Der William-Kotzwinkle-Omnibus (1993)
784Alasdair Gray: Lanark (1992)
671Gay Talese: Du sollst begehren (2007)
671Richard Tarnas: Idee und Leidenschaft (1997)
654Count Franz Pocci: Die gesamte Druckgraphik (1974)
647Arno Orzessek: Schattauers Tochter (2005)
598Karlheinz Steinmüller, Angela Steinmüller: Visionen 1900, 2000, 2100 (1999)
594Greil Marcus: Im faschistischen Badezimmer (1994)
560T. Coraghessan Boyle: Wassermusik (1987)
559T. Coraghessan Boyle: Wassermusik (2010)
556John Peel: Memoiren des einflussreichsten DJs der Welt (2006)
556John Peel: Memoiren des einflussreichsten DJs der Welt (2011)
554Adrian Ludwig Richter: Das Ludwig-Richter-Hausbuch (1976)
544Hector Berlioz: Memoiren (1979)
535Gay Talese: Ehre deinen Vater (2008)
533Salvador Dalí: Unabhängigkeitserklärung der Phantasie und Erklärung der Rechte des Menschen auf seine Verrücktheit (1975)

Rowohlt

pagesauthor: title (year)
2253Klaus Harpprecht: Thomas Mann (1995)
2253Klaus Harpprecht: Thomas Mann (1995)
2026Karl Corino: Robert Musil (2003)
1723Péter Nádas: Parallelgeschichten (2013)
1723Péter Nádas: Parallelgeschichten (2012)
1719Rolf Hochhuth: Essayistische Prosa und Gedichte (2011)
1671Robert Musil: Der Mann ohne Eigenschaften (1952)
1642Rolf Hochhuth: Alle Erzählungen, Gedichte und Romane (2001)
1632Robert Musil: Der Mann ohne Eigenschaften (1974)
1632Robert Musil: Der Mann ohne Eigenschaften (1967)
1632Robert Musil: Der Mann ohne Eigenschaften (1960)
1632Robert Musil: Der Mann ohne Eigenschaften (1970)
1595Thomas Pynchon: Gegen den Tag (2010)
1595Thomas Pynchon: Gegen den Tag (2008)
1568Everett Helm: Béla Bartók (1992)
1547David Foster Wallace: Unendlicher Spass (2011)
1342Harold Brodkey: Die flüchtige Seele (1997)
1342Harold Brodkey: Die flüchtige Seele (1995)
1303Péter Nádas: Buch der Erinnerung (1992)
1274Rolf Hochhuth: Neue Dramen, Gedichte, Prosa (2006)

Schöffling & Co.

pagesauthor: title (year)
1001Guntram Vesper: Frohburg (2016)
808Helga M. Novak: Solange noch Liebesbriefe eintreffen (1999)
786Bora Ćosić: Die Tutoren (2015)
758Heinz Rein: Finale Berlin (2015)
699Ulrich Becher: Murmeljagd (2009)
668Paul Kornfeld: Blanche oder das Atelier im Garten (1998)
653Silvia Tennenbaum: Straßen von gestern (2012)
621Rudolf Lorenzen: Alles andere als ein Held (2002)
612Miljenko Jergović: Das Walnusshaus (2008)
603Sebastian Faulks: Gesang vom großen Feuer (1997)
565Juli Zeh: Spieltrieb (2004)
564Benjamin Moser: Clarice Lispector (2013)
559Martin Kessel: Herrn Brechers Fiasko (2001)
550Simon Urban: Plan D (2011)
547Hans Pleschinski: Brabant (1995)
541Russell Banks: Verstoßen (2015)
539Martin Kessel: Lydia Faude (2001)
537Jennifer Egan: Die Farbe der Erinnerung (1999)
535Jennifer Egan: Look at me (2002)
524Markus Orths: Alpha & Omega (2014)

Suhrkamp

pagesauthor: title (year)
2569Amos Oz: Die Romane (2009)
2085Emil Cioran: Werke (2008)
1909Marguerite Duras: Die Romane (2008)
1840Thomas Bernhard: Die Romane (2008)
1838Hermann Hesse: Die Erzählungen und Märchen (2009)
1782Bertolt Brecht: Prosa (2013)
1782Max Frisch: Romane, Erzählungen, Tagebücher (2008)
1735Alejo Carpentier: Die Romane (2011)
1686Michel Foucault: Die Hauptwerke (2008)
1676James Joyce: Prosa (2010)
1646Bertolt Brecht: Die Gedichte (2007)
1514Ödön von Horváth: Prosa und Stücke (2008)
1513Arno Schmidt: Zettel’s Traum (2010)
1488Paul Nizon: Romane, Erzählungen, Journale (2009)
1487Bohumil Hrabal: Die Romane (2008)
1463Franz Kafka: Sämtliche Werke (2008)
1407Slavoj Žižek: Weniger als nichts (2016)
1407Slavoj Žižek: Weniger als nichts (2014)
1388Bertolt Brecht: Die Gedichte (1995)
1388Bertolt Brecht: Die Gedichte (1993)

Ullstein

pagesauthor: title (year)
1492Bill Clinton: Mein Leben (2005)
1408Ludwig Wolff: Gesammelte Romane (1924)
1280Klaus Hildebrand: Das vergangene Reich (1999)
1270Matthew Reilly: Ice Station (2005)
1228Joachim Fest: Hitler (2005)
1228Joachim Fest: Hitler (1998)
1221Joachim Fest: Hitler (2003)
1214Stephen King: Es (2009)
1214Stephen King: Es (2005)
1214Stephen King: Es (2003)
1190Joachim Fest: Hitler (1996)
1190Joachim Fest: Hitler (1995)
1190Joachim Fest: Hitler (1993)
1190Joachim Fest: Hitler (1992)
1190Joachim Fest: Hitler (1991)
1190Joachim Fest: Hitler (1989)
1190Joachim Fest: Hitler (1987)
1181Heinrich von Kleist: Sämtliche Werke (1997)
1152Johannes Fried: Der Weg in die Geschichte (1998)
1149Leonie Ossowski: Weichselkirschen (2000)

Urs Engeler Editor

pagesauthor: title (year)
1095Ulrich Schlotmann: Die Freuden der Jagd (2009)
712Felix Philipp Ingold: Gegengabe (2009)
539Felix Philipp Ingold: Wortnahme (2005)
415Philippe Lacoue-Labarthe: Dichtung als Erfahrung (2009)
405Wolfgang Held: Traum vom Hungerturm (2007)
371Walter Abish: Alphabetical Africa (2002)
363Jean Paulhan: Die Blumen von Tarbes und weitere Schriften zur Theorie der Literatur (2009)
359H.D.: Tribut an Freud (2008)
333Pier Paolo Pasolini: Dunckler Enthusiasmo (2009)
323Francis Ponge: L’ opinion changée quant aux fleurs (2005)
319Bruno Steiger: Zwischen Unorten (2009)
314Elke Erb: Sonanz (2008)
295Michael Donhauser: Livia oder die Reise (2004)
282Harry Mathews: Mein Leben als CIA (2006)
282Ulf Stolterfoht: Die 1000 Tage des Brueterich (2013)
247Donald Barthelme: Der tote Vater (2007)
230Anna Akhmatova: Enuma elisch (2005)
225Edna St. Vincent Millay: Love is not all (2008)
222H.D.: Madrigal (2008)
215Jean Daive: Unter der Kuppel (2009)

Verbrecher Verlag

pagesauthor: title (year)
1071J. J. Voskuil: Das A.P. Beerta-Institut (2015)
1035Dietmar Dath: Für immer in Honig (2008)
990J. J. Voskuil: Und auch Wehmütigkeit (2016)
846J. J. Voskuil: Direktor Beerta (2016)
815Chaim Noll: Der Kitharaspieler (2008)
796Giwi Margwelaschwili: Der Kantakt (2009)
771Carsten Gansel: Literatur im Dialog (2015)
701Rudolf Lorenzen: Alles andere als ein Held (2014)
686Rudolf Lorenzen: Alles andere als ein Held (2007)
679Karsten Krampitz: Der Fall Brüsewitz (2016)
594Detlev van Heest: Junglaub (2016)
583Peter O. Chotjewitz: Mein Freund Klaus (2014)
576Peter O. Chotjewitz: Mein Freund Klaus (2007)
543Christian Geissler: Das Brot mit der Feile (2016)
482Chaim Noll: Der Schmuggel über die Zeitgrenze (2015)
475Christian Broecking: Respekt! (2011)
447Chaim Noll: Die Synagoge (2014)
445Rudolf Lorenzen: Rhythmen, die die Welt bewegten (2010)
414Rudolf Lorenzen: Die Beutelschneider (2007)
394Christian Y. Schmidt: Wir sind die Wahnsinnigen (2013)

Voland & Quist

pagesauthor: title (year)
553Matthias Frings: L’ ultimo comunista (2012)
539Brigitte Reimann: Franziska Linkerhand (2005)
399Viktar Martsinovich: Paranoia (2014)
394Viktar Martsinovich: Mova (2016)
325Barbara Frischmuth: La scrittura dell’amico (2009)
317Tobias Herre: Das Fehlerchen (2012)
281Volker Surmann: Extremely cold water (2014)
273Edo Popović: Die Spieler (2009)
265Kriszta Bódis: Artista (2009)
263Wolfgang Büscher: Germania, un viaggio (2009)
255Ralph Dutli: L’ ultimo viaggio di Soutine (2016)
254Kirsten Fuchs, Volker Strübing: Nicht der Süden (2009)
221Olja Savičević: Lebt wohl, Cowboys (2011)
215Wolfgang Büscher: Berlino - Mosca (2008)
205Clemens Meyer: Zwei Himmelhunde (2016)
203Volker Strübing: Das Paradies am Rande der Stadt (2013)
173Edo Popović: Mitternachtsboogie (2010)
172Sarah Bosetti: Mein schönstes Ferienbegräbnis (2015)
172Kirsten Fuchs: Eine Frau spürt so was nicht (2015)
171Roman Simić: Von all den unglaublichen Dingen (2013)

Wallstein

pagesauthor: title (year)
926H. G. Adler: Theresienstadt (2005)
871Ricarda Huch: Du, mein Dämon, meine Schlange … (1998)
856Andreas Gotzmann: Jüdische Autonomie in der frühen Neuzeit (2008)
840Detlef Siegfried: Time is on my side (2006)
799Christine Lavant: Zu Lebzeiten veröffentlichte Erzählungen (2015)
776Martin Avenarius: Fremde Traditionen des römischen Rechts (2014)
768Johann Wilhelm Ludwig Gleim: Ausgewählte Werke (2003)
765Franz Baermann Steiner: Zivilisation und Gefahr (2008)
763Rainer Malkowski: Die Gedichte (2009)
761Matthias Zschokke: Lieber Niels (2011)
760Gerhard Paul: Das visuelle Zeitalter (2016)
728Albrecht Joseph, Carl Zuckmayer: Briefwechsel (2007)
720Thomas Lackmann: Der Sohn meines Vaters (2008)
710Rüdiger Hachtmann: Das Wirtschaftsimperium der Deutschen Arbeitsfront (2012)
688Jens-Christian Wagner: Produktion des Todes (2001)
679Sebastian Ullrich: Der Weimar-Komplex (2009)
677Olaf Blaschke: Verleger machen Geschichte (2010)
676Gerhard Paul: BilderMACHT (2013)
662Jens-Christian Wagner: Produktion des Todes (2015)
658Nicolas Born: Gedichte (2004)

Wiesenburg

pagesauthor: title (year)
515Erik Lorenz: Streifzug durch Laos (2012)
384Monika Böss: Marvins Bräute (2005)
379Norbert Schmid: Norm_372n (2008)
377Wolfgang Dahms: Das richtige Wort (2007)
372Erik Lorenz: Durch das Herz Englands (2014)
315Norbert Schmid: Marlies (2003)
310Hartmut Löffel: Schmerzpunkte oder die Kunst, zu überleben (2011)
309Martin Wein: Süd-Pazifik (2010)
309Armin Strohmeyr: Dame mit rotem Kater (2015)
304Gyde Callesen: Angst hat die Quersumme 5 (2013)
303Karl-Heinz Schreiber: Der Meerschwimmer oder Heimat für Blumberg (2005)
281Godehard Schramm: Zweite Heimat Gardasee (2009)
260Martin Wein: Abenteuer im Eis (2011)
259Godehard Schramm: Einladungen nach Polen (2008)
241Silke Heimes: Der Fremde (2008)
241Norbert Schmid: Der Tote im Park (1999)
237Blanche Willis Howard: Ein Jahr unterwegs (2008)
235Khamsing Srinawk: Der Politiker und andere Geschichten aus Thailand (2015)
235Arthur Conan Doyle: Tatort Ägypten (2008)
233Thomas Bauer: Mush! (2013)

temporal distribution

Let’s plot the median number of pages per year and per decade:

./json2json.py -f -p "issued_norm,pages_norm,creator_wd.*.occupation_writer" DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{print $1"\t"$2}' \
    | sort -S1G -nr \
            > issued_pages.tsv
cat issued_pages.tsv | datamash -g 1 median 2 mean 2 min 2 max 2 count 2 q1 2 q3 2 \
    | sed "s/,/./g" \
          > issued_pages_stats.tsv
awk -F'\t' '{print int($1/10)"\t"$2}' issued_pages.tsv \
    | datamash -g 1 median 2 mean 2 min 2 max 2 count 2 q1 2 q3 2 \
    | sed "s/,/./g" \
          > issued_pages_decade_stats.tsv
reset
set encoding utf8
set term pngcairo enhanced size 800,600
set out 'issued_pages_decade.png'

set grid
set datafile separator "\t"
set xrange [1500:2020]
set xlabel 'year'
set ylabel 'number of pages per decade'

plot \
  'issued_pages_decade_stats.tsv' using ($1*10):7:8 with filledcurves fs transparent solid 0.2 noborder lc rgb "green" title '1st and 3rd quartile',\
  'issued_pages_decade_stats.tsv' using ($1*10):2 with linespoints pt 7 lw 2 lt 3 lc rgb "green" title 'median'

set term svg enhanced size 800,600
set out 'issued_pages_decade.svg'
replot


# starting in 1912
set xrange [1912:2020]
set xtics 10,10

set term pngcairo enhanced size 800,600
set out 'issued_pages_1912.png'

plot \
  'issued_pages_stats.tsv' using 1:7:8 with filledcurves fs transparent solid 0.2 noborder lc rgb "green" title '1st and 3rd quartile',\
  'issued_pages_stats.tsv' using 1:2 with lines lw 2 lt 3 lc rgb "green" title 'median'
#,\
#  'issued_pages_stats.tsv' using 1:3 with lines lw 2 lt 3 lc rgb "blue" title 'mean'

set term svg enhanced size 800,600
set out 'issued_pages_1912.svg'
replot

issued_pages_decade.png

issued_pages_1912.png

1955

Why is there such a pronounced peak in 1955?

Let’s first look at the distribution of the number of pages in that year:

reset
set encoding utf8
set term pngcairo enhanced size 800,600
set out 'issued_pages_1955.png'

set grid
set xlabel 'number of pages'
set ylabel 'items with that number of pages'
set logscale
set xrange [10:1000]

set label "250" right at 250,500 tc rgb 'red' offset -.3,0
set label "260" left at 260,500 tc rgb 'red' offset .3,0
set arrow from 250,1 to 250,1000 nohead lc rgb 'red'
set arrow from 260,1 to 260,1000 nohead lc rgb 'red'
set xtics 10,10

plot '< grep ^1955 issued_pages.tsv | cut -f2 | sort | uniq -c' using 2:1 title '' with points pt 7

set term svg enhanced size 800,600
set out 'issued_pages_1955.svg'
replot

issued_pages_1955.png

We see peaking page numbers between 250 and 260.

Let’s extract all items from 1955 and analyse them further:

./json2json.py -f -p \
               "issued_norm,pages_norm,publisher,title,_id,creator_wd.*.name,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | grep ^1955 > 1955.tsv

top publisher

awk -F'\t' '{print $3}' 1955.tsv | sort | uniq -c | sort -nr | head
publisheritems
Mülbüsch407
Feldmann246
Aufbau-Verl.142
Insel-Verl.104
Reclam85
Herder84
Dietz79
Büchergilde Gutenberg76
Bertelsmann71
Dt. Buch-Gemeinschaft64

Let us compare this with the year before and after 1955:

awk -F'\t' '{print $3}' 1954.tsv | sort | uniq -c | sort -nr | head
awk -F'\t' '{print $3}' 1956.tsv | sort | uniq -c | sort -nr | head
top publisher 1954itemstop publisher 1955itemstop publisher 1956items
Aufbau-Verl.142Mülbüsch407Aufbau-Verl.108
Reclam105Feldmann246Insel-Verl.96
Insel-Verl.103Aufbau-Verl.142Reclam95
Herder94Insel-Verl.104Herder81
Bertelsmann71Reclam85Rowohlt71
Dt. Buch-Gemeinschaft64Herder84Büchergilde Gutenberg70
Büchergilde Gutenberg61Dietz79Desch65
Rowohlt59Büchergilde Gutenberg76Goldmann59
Schöningh56Bertelsmann71Kinderbuchverl.54
Goldmann53Dt. Buch-Gemeinschaft64Verl. Neues Leben53

In 1955 two publishers clearly have an above-average number of items: Mülbüsch and Feldmann. Strangely, those two publishers do not even have a (German) Wikipedia page and do not appear among the top publishers in 1954 or 1956.

top publisher-author pairs

awk -F'\t' '{print $3,$6}' 1955.tsv | sort | uniq -c | sort -nr | head
publisherauthoritemsauthor description from Wikipedia
MülbüschGert Fritz Unger194Schriftsteller und Autor von Wildwestromanen
MülbüschAxel Berger176schrieb unter anderem Westernromane
FeldmannHans-Joachim Koblinski141schrieb {…} Romane, die vorrangig als Leihbuch und Heftroman
BorgsmüllerFreder van Holk45bekannt vor allem durch seine Heftromanreihen
FeldmannJoe Juhnke39Schriftsteller vor allem von Westernromanen
MülbüschRobert Ullman36schrieb {…} zwischen 1956 und 1966 etwa 120 Westernromane
FeldmannRobert Ullman36schrieb {…} zwischen 1956 und 1966 etwa 120 Westernromane
Bewin-Verl. WinterbachKurt Brand33900 bis 1000 Romane {…} im Bereich des Heftromans
FeldmannUwe Hans Wilken23Autor vor allem von Westernromanen
Bewin-Verlag WinterbachKurt Brand19900 bis 1000 Romane {…} im Bereich des Heftromans

Analysing the pairs of authors and publishers brings us closer to the explanation for the peak: Most of the works of those publishers are only from a few authors, and most of them are authors of wild west novels, published as cheap, high volume books.

Again, a comparison with the year before and after:

awk -F'\t' '{print $3,$6}' 1955.tsv | sort | uniq -c | sort -nr | head
publisher 1954author 1954itemspublisher 1956author 1956items
GoldmannEdgar Wallace19BadstöberToni Falkner17
MoewigOtto Mielke13GoldmannEdgar Wallace14
Hönne-Verl.Toni Falkner11Widukind-Verl.Toni Falkner10
Oekumenische MarienschwesternschaftBasilea Schlink10HerderHerbert Kranz10
Aufbau-Verl.Theodore Dreiser10Verl. d. Rudolf Steiner-NachlassverwaltungRudolf Steiner9
Schnell &Steiner Hugo Schnell9MoewigOtto Mielke9
Novalis-Verl.Rudolf Steiner9BachEdeltraut Herder9
LiebelJosef Carl Grund8PfriemK. H. Scheer8
KloppEnid Blyton8Gloria-Verl.Anna Hottner-Grefe8
Gute SchriftenJohanna Spyri8DietzVladimir Lenin8

Those author-publisher pairs do no longer appear, which is quite strange for the year 1956, since presumably those novels did not just disappear. Maybe the DNB stopped collecting them?

temporal distribution for publisher

./json2json.py -f -p "issued_norm,pages_norm,publisher,creator_wd.*.occupation_writer" \
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1912) print $1"\t"$2"\t"$3}' \
> publisher_raw_data.tsv
reset
set encoding utf8
set term pngcairo enhanced size 800,600
set out 'issued_1955.png'

set grid
set xlabel 'year'
set ylabel 'number of items'

plot '< grep Feldmann publisher_raw_data.tsv | cut -f1 | sort | uniq -c' using 2:1 title 'Feldmann' with linespoints pt 7 lw 2,\
     '< perl -ne "print if/M...lb...sch/" publisher_raw_data.tsv | cut -f1 | sort | uniq -c' using 2:1 title 'Muelbuesch' with linespoints pt 7 lw 2

set term svg enhanced size 800,600
set out 'issued_1955.svg'
replot

issued_1955.png

comparison to 1001-books top list

Plot cumulative frequency distribution of the number of pages:

reset
set encoding utf8
set term pngcairo enhanced size 800,600
set out 'cumulative_page_distrib.png'

set grid
set datafile separator "\t"
set xlabel 'number of pages'
set ylabel 'P[x < number of pages]'
set logscale x

# divide the y-value by the number of books in the dataset
plot \
  '1001-books/counts.tsv' using 1:($2/1001) smooth cumulative with lines title '1001 books',\
  'pages_freq.tsv' using 1:($2/1029609) smooth cumulative with lines title 'DNB'

set term svg enhanced size 800,600
set out 'cumulative_page_distrib.svg'
replot

cumulative_page_distrib.png

The page distribution for the 1001 book list is skewed towards books with longer pages. Let’s compare two specific ranges of pages: more than 1000 pages vs. between 100 and 400 pages.

echo "dataset\t>1000 pages\t100-400 pages\tratio"
for file in 1001-books/counts.tsv pages_freq.tsv; do
    awk -F'\t' '
        {
          SUM += $2;
          if ($1 > 1000) SUMBIG += $2;
          if ($1 >= 100 && $1 <= 400) SUMSMALL += $2
        } END {
          printf("%s\t%s (%2.1f%%)\t%s (%2.1f%%)\t%2.4f\n", FILENAME, SUMBIG, SUMBIG/SUM*100, SUMSMALL, SUMSMALL/SUM*100, SUMBIG/SUMSMALL)
        }' $file
done
dataset>1000 pages100-400 pagesratio
1001 books23 (2.3%)682 (68.1%)0.0337
DNB3954 (0.4%)641780 (62.3%)0.0062

occupations

Extract:

./json2json.py -f \
               -p "issued_norm,pages_norm,creator_wd.*.id,creator_wd.*.occupation_writer" \
               -c "creator_wd.*.id,creator_wd.*.occupation_writer"\
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1913 && $2 <= 5000) {gsub(/,.*/, "", $4); print $3"\t"$4"\t"$2}}' \
          > author_occupations.tsv

Count:

LC_ALL=C datamash -s -g2 countunique 1 count 2 sum 3 mean 3 median 3 q1 3 q3 3 min 3 max 3 < author_occupations.tsv | sort -t$'\t' -nrk2 | head -n20

top 20 occupations

Table:

occupationpeoplebookspagesmean pagesmedian pagesq1q3minmax
writer2398850238511481154222919110931014292
journalist7040965212310911023921712731913376
historian46913344584070442512159635312536
theologian33045162797782741891527125912661
poet279463917127072511991538026614290
art historian228721164376766717813148255.2511691
screenwriter205141552991131523920612831711711
non-fiction writer174026179602409323019811829813296
translator15352696155395192051679227111853
novelist1211378111167157230928017539912021
archaeologist982620511232621811385426411420
historian of the modern age7377808223314828625412839231607
television presenter6807556170137022520512730121067
medievalist502420910264562442078935021423
church historian463471310138172151666131121302
playwright4522509451125972041569525513360
opinion journalist441511010335362021848528221531
regional historian38732996621272011495628721580
legal historian33032267661382371867333932998
literary historian31538029079472391907834621779

plot

Plot:

reset
set term pngcairo enhanced size 800,600
set out 'occupations.png'

set grid y
set datafile separator "\t"
set xlabel 'occupation'
set ylabel 'number of pages'
set style fill solid .2 noborder
set boxwidth .6
set xtics rotate by 45 right
set yrange [0:]
set offset 0.8,0.8

#plot data using 5:xticlabels(1) title '',\
#  data using 10:xticlabels(1) title ''

plot data using :7:7:8:8:xticlabels(1) with candlesticks lt 2 lw 2 notitle,\
     data using :6:6:6:6:xticlabels(1) with candlesticks lt 2 lw 2 notitle

set term svg enhanced size 800,600
set out 'occupations.svg'
replot

occupations.png

example writers

Extract author names together with occupation:

./json2json.py -f \
               -p "issued_norm,pages_norm,creator_wd.*.name,creator_wd.*.occupation_writer" \
               -c "creator_wd.*.occupation_writer,creator_wd.*.name"\
               DNBTitel_normalised_enriched.json.gz \
    | awk -F'\t' '{if ($1 >= 1913 && $2 <= 5000) {gsub(/,.*/, "", $4); print $3"\t"$4"\t"$2}}' \
          > author_occupations_name.tsv
for writer in $(LC_ALL=C datamash -s -g2 countunique 1  < author_occupations.tsv | awk -F'\t' '{print $2"\t"$1}' | sort -nr | cut -f2 | sed "s/ /_/g" | head); do
    writer=$(echo $writer | sed "s/_/ /g")
    echo
    echo "$writer\tbooks\tpages\tmean pages\tmedian pages"
    awk -F'\t' -v writer="$writer" '{if ($2 == writer) print $1"\t"$3}' author_occupations_name.tsv \
        | LC_ALL=C datamash -s -g1 count 2 sum 2 mean 2 median 2 \
        | sort -t$'\t' -nrk2 | head
done
writerbookspagesmean pagesmedian pages
Rudolf Steiner3992698028175168
Stefan Zweig2532689691272253
Jacob Grimm202026352113066.5
Wilhelm Grimm194325125512964
Erich Kästner1873310086166155
Heinrich Böll1796392384218189
Rainer Maria Rilke1689288839171125
Marie Louise Fischer1678436068260246.5
Gottfried Keller166632615619695
Anselm Grün1605229154143142
journalistbookspagesmean pagesmedian pages
Heinz G. Konsalik3190984514309286
Karl Marx2578550296213140
Edgar Wallace1041209826202188
Mark Twain964256933267254
Kurt Tucholsky664150305226166.5
Emil Ludwig456154424339311
Simone de Beauvoir400155462389347
A. E. Johann385137705358344
Manfred Hausmann34147191138101
Brigitte Blobel33280939244223
historianbookspagesmean pagesmedian pages
Tacitus27050119186108
Gottfried Wilhelm Leibniz26773252274208
Hannah Arendt23172724315293
Sallust19226642139119
Franz Mehring16160334375398
Leopold von Ranke15358303381316
Franz Herre14648391331367
Jochen Brennecke14341538290272
Gershom Scholem14341669291286
Egon Caesar Corti13650235369391.5
theologianbookspagesmean pagesmedian pages
Benedict XVI783138029176143
Karl Rahner716132551185132
Karl Jaspers583152073261186
Albert Schweitzer558112662202155
Karl Barth55087846160109.5
Hans Küng524167706320249
Dietrich Bonhoeffer506101189200154
Ernst Modersohn4815080810669
Hans Urs von Balthasar44285232193153
Augustine of Hippo33987041257199
poetbookspagesmean pagesmedian pages
Friedrich Schiller2047403714197146
Theodor Storm196726459013591
Friedrich Nietzsche1788475373266235
Heinrich Heine1388324448234176
Wilhelm Hauff1290227500176121
Wilhelm Busch119118540215695
Martin Heidegger981226911231206
Oscar Wilde859144464168107
Robert Louis Stevenson853187073219206
Eduard Mörike742127261172100
art historianbookspagesmean pagesmedian pages
Hugo Schnell36579122214
Jacob Burckhardt297119125401383
Heinrich Lützeler182179829916
Wilhelm Hausenstein11618740162106.5
Heinrich Wölfflin11027116247283.5
Ernst Gombrich10433092318327
Max Hermann von Freeden10357875639
Werner Schmalenbach9279828739
Karl Scheffler9217887194190
Paul Nizon9018043200178
screenwriterbookspagesmean pagesmedian pages
Siegfried Lenz902215600239180.5
Stephen King811388836479447
Vicki Baum790263396333307
Johannes Mario Simmel774349431451495
Walt Disney712588658360
Karl-Heinz Günther55491504165160
Astrid Lindgren51390417176157
Irina Korschunow47062985134117
Roald Dahl38873673190182
Felix Salten38782868214199
non-fiction writerbookspagesmean pagesmedian pages
Erich Fromm43996030219199
Kurt Tepperwein39984594212205
Alfred Adler25862170241235
Wilhelm Reich25765299254269
Helmut Schmidt19642050215243
Otto Mielke190143377545
Horst-Eberhard Richter18952814279280
Martin Selber18833577179122
Hans Zulliger18124953138135
Ulrich Beck17651207291289.5
translatorbookspagesmean pagesmedian pages
Martin Luther159020696913078
Fyodor Dostoyevsky1088530695488439
Jörg Zink6147529712371
Martin Buber483101054209168
Lise Gast47781613171155
Gina Ruck-Pauquèt323296929294
Arno Schmidt31883856264189
Frederik Hetmann30671513234217
Käthe Recheis28243028153109
Janwillem van de Wetering26050416194188
novelistbookspagesmean pagesmedian pages
Hermann Hesse3362738260220188
Thomas Mann2609960697368305
Franz Kafka2020538979267238
Karl May1503507174337341
Jules Verne856209769245222
Peter Handke829141812171130
Eleanor Hibbert696263183378367
Selma Lagerlöf585143503245219
Barbara Cartland576108242188160
Hugo von Hofmannsthal53091294172111

items vs. mean number of pages

(Skipped:)

reset
set term pngcairo enhanced size 800,600
set out 'author_occupations.png'

set grid
set datafile separator "\t"
set logscale

set xlabel 'number of items
set ylabel 'mean number of pages per item'

plot 'author_occupations_stats.tsv' using 3:(stringcolumn(2) eq "writer" ? $4 : 1/0) title 'writer',\
     'author_occupations_stats.tsv' using 3:(stringcolumn(2) eq "journalist" ? $4 : 1/0) title 'journalist',\
     'author_occupations_stats.tsv' using 3:(stringcolumn(2) eq "historian" ? $4 : 1/0) title 'historian',\
     'author_occupations_stats.tsv' using 3:(stringcolumn(2) eq "theologian" ? $4 : 1/0) title 'theologian',\
     'author_occupations_stats.tsv' using 3:(stringcolumn(2) eq "poet" ? $4 : 1/0) title 'poet'

set term svg enhanced size 800,600
set out 'author_occupations.svg'
replot