aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rwxr-xr-xexamples/generate_benchmarks.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/examples/generate_benchmarks.py b/examples/generate_benchmarks.py
new file mode 100755
index 0000000..14b531c
--- /dev/null
+++ b/examples/generate_benchmarks.py
@@ -0,0 +1,30 @@
+#!/usr/bin/env python3
+import csv
+import random
+
+def generate_large():
+ print("Generating large.csv (100,000 rows, 10 columns)...")
+ with open("large.csv", "w", newline="") as f:
+ writer = csv.writer(f)
+ for _ in range(100000):
+ writer.writerow(["cell" + str(random.randint(0, 1000)) for _ in range(10)])
+
+def generate_wide():
+ print("Generating wide.csv (1,000 rows, 1,000 columns)...")
+ with open("wide.csv", "w", newline="") as f:
+ writer = csv.writer(f)
+ for _ in range(1000):
+ writer.writerow(["cell" + str(random.randint(0, 100)) for _ in range(1000)])
+
+def generate_quoted():
+ print("Generating quoted.csv (100,000 rows, 10 columns with quotes and newlines)...")
+ with open("quoted.csv", "w", newline="") as f:
+ writer = csv.writer(f)
+ for _ in range(100000):
+ writer.writerow(["\"quoted, string\n" + str(random.randint(0, 1000)) + "\"" for _ in range(10)])
+
+if __name__ == "__main__":
+ generate_large()
+ generate_wide()
+ generate_quoted()
+ print("Done!")