Add filter desc

Show benchmarks

PyArrow==6.0.0

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.008477 / 0.011353 (-0.002875) | 0.004565 / 0.011008 (-0.006443) | 0.101640 / 0.038508 (0.063132) | 0.029581 / 0.023109 (0.006472) | 0.296524 / 0.275898 (0.020625) | 0.363175 / 0.323480 (0.039695) | 0.006961 / 0.007986 (-0.001024) | 0.003365 / 0.004328 (-0.000963) | 0.079689 / 0.004250 (0.075439) | 0.034881 / 0.037052 (-0.002171) | 0.310979 / 0.258489 (0.052489) | 0.348663 / 0.293841 (0.054822) | 0.034549 / 0.128546 (-0.093997) | 0.011463 / 0.075646 (-0.064184) | 0.326218 / 0.419271 (-0.093053) | 0.041393 / 0.043533 (-0.002140) | 0.297604 / 0.255139 (0.042465) | 0.335751 / 0.283200 (0.052551) | 0.086521 / 0.141683 (-0.055162) | 1.478906 / 1.452155 (0.026752) | 1.512777 / 1.492716 (0.020060) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.008767 / 0.018006 (-0.009239) | 0.397386 / 0.000490 (0.396897) | 0.003136 / 0.000200 (0.002936) | 0.000096 / 0.000054 (0.000042) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.022804 / 0.037411 (-0.014608) | 0.097591 / 0.014526 (0.083066) | 0.103189 / 0.176557 (-0.073368) | 0.138165 / 0.737135 (-0.598970) | 0.107464 / 0.296338 (-0.188874) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.428956 / 0.215209 (0.213747) | 4.269656 / 2.077655 (2.192001) | 2.154418 / 1.504120 (0.650298) | 1.914176 / 1.541195 (0.372982) | 1.818452 / 1.468490 (0.349962) | 0.701381 / 4.584777 (-3.883396) | 3.425190 / 3.745712 (-0.320522) | 1.862545 / 5.269862 (-3.407316) | 1.166271 / 4.565676 (-3.399405) | 0.083678 / 0.424275 (-0.340597) | 0.012254 / 0.007607 (0.004647) | 0.535710 / 0.226044 (0.309665) | 5.342528 / 2.268929 (3.073600) | 2.627135 / 55.444624 (-52.817489) | 2.308313 / 6.876477 (-4.568164) | 2.325568 / 2.142072 (0.183496) | 0.818318 / 4.805227 (-3.986909) | 0.149812 / 6.500664 (-6.350853) | 0.064559 / 0.075469 (-0.010910) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.253611 / 1.841788 (-0.588176) | 13.646763 / 8.074308 (5.572455) | 14.387630 / 10.191392 (4.196238) | 0.159937 / 0.680424 (-0.520487) | 0.029123 / 0.534201 (-0.505078) | 0.400909 / 0.579283 (-0.178374) | 0.422830 / 0.434364 (-0.011534) | 0.488205 / 0.540337 (-0.052133) | 0.577982 / 1.386936 (-0.808954) |

PyArrow==latest

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.006430 / 0.011353 (-0.004923) | 0.004433 / 0.011008 (-0.006576) | 0.077459 / 0.038508 (0.038951) | 0.026949 / 0.023109 (0.003840) | 0.350276 / 0.275898 (0.074378) | 0.376189 / 0.323480 (0.052709) | 0.004945 / 0.007986 (-0.003041) | 0.003280 / 0.004328 (-0.001048) | 0.076465 / 0.004250 (0.072215) | 0.037510 / 0.037052 (0.000457) | 0.350410 / 0.258489 (0.091921) | 0.386778 / 0.293841 (0.092937) | 0.031933 / 0.128546 (-0.096613) | 0.011691 / 0.075646 (-0.063956) | 0.086519 / 0.419271 (-0.332753) | 0.042490 / 0.043533 (-0.001043) | 0.355930 / 0.255139 (0.100791) | 0.366500 / 0.283200 (0.083301) | 0.089542 / 0.141683 (-0.052141) | 1.492859 / 1.452155 (0.040704) | 1.548626 / 1.492716 (0.055910) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.220123 / 0.018006 (0.202117) | 0.396970 / 0.000490 (0.396480) | 0.000398 / 0.000200 (0.000198) | 0.000059 / 0.000054 (0.000004) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.024831 / 0.037411 (-0.012580) | 0.099681 / 0.014526 (0.085156) | 0.108922 / 0.176557 (-0.067635) | 0.143004 / 0.737135 (-0.594131) | 0.109671 / 0.296338 (-0.186667) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.444237 / 0.215209 (0.229028) | 4.430330 / 2.077655 (2.352675) | 2.235003 / 1.504120 (0.730883) | 2.010499 / 1.541195 (0.469305) | 2.030585 / 1.468490 (0.562095) | 0.701938 / 4.584777 (-3.882839) | 3.334569 / 3.745712 (-0.411144) | 1.861680 / 5.269862 (-3.408181) | 1.166072 / 4.565676 (-3.399604) | 0.083870 / 0.424275 (-0.340405) | 0.012615 / 0.007607 (0.005008) | 0.548789 / 0.226044 (0.322744) | 5.488064 / 2.268929 (3.219136) | 2.614926 / 55.444624 (-52.829698) | 2.246455 / 6.876477 (-4.630022) | 2.277439 / 2.142072 (0.135367) | 0.808449 / 4.805227 (-3.996778) | 0.152434 / 6.500664 (-6.348230) | 0.066709 / 0.075469 (-0.008760) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.316880 / 1.841788 (-0.524908) | 13.965269 / 8.074308 (5.890961) | 13.660187 / 10.191392 (3.468795) | 0.157801 / 0.680424 (-0.522623) | 0.016580 / 0.534201 (-0.517621) | 0.382834 / 0.579283 (-0.196449) | 0.394717 / 0.434364 (-0.039647) | 0.465138 / 0.540337 (-0.075200) | 0.552399 / 1.386936 (-0.834537) |

![](https://cml.dev/watermark.png#fa06927a62e2983e2f0e8b7ba8262070c1543d78 "CML watermark")

Show benchmarks

PyArrow==6.0.0

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.009341 / 0.011353 (-0.002012) | 0.005303 / 0.011008 (-0.005705) | 0.099287 / 0.038508 (0.060779) | 0.035587 / 0.023109 (0.012478) | 0.295146 / 0.275898 (0.019248) | 0.370470 / 0.323480 (0.046990) | 0.008910 / 0.007986 (0.000925) | 0.004358 / 0.004328 (0.000029) | 0.076298 / 0.004250 (0.072047) | 0.047187 / 0.037052 (0.010135) | 0.309025 / 0.258489 (0.050536) | 0.346659 / 0.293841 (0.052818) | 0.038378 / 0.128546 (-0.090168) | 0.012475 / 0.075646 (-0.063172) | 0.334370 / 0.419271 (-0.084901) | 0.048391 / 0.043533 (0.004858) | 0.298613 / 0.255139 (0.043474) | 0.317329 / 0.283200 (0.034130) | 0.108748 / 0.141683 (-0.032934) | 1.450454 / 1.452155 (-0.001701) | 1.519883 / 1.492716 (0.027167) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.011513 / 0.018006 (-0.006494) | 0.498941 / 0.000490 (0.498451) | 0.005098 / 0.000200 (0.004898) | 0.000096 / 0.000054 (0.000042) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.030523 / 0.037411 (-0.006888) | 0.105478 / 0.014526 (0.090952) | 0.121101 / 0.176557 (-0.055456) | 0.159951 / 0.737135 (-0.577184) | 0.126766 / 0.296338 (-0.169572) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.399101 / 0.215209 (0.183892) | 3.997069 / 2.077655 (1.919414) | 1.851592 / 1.504120 (0.347472) | 1.695708 / 1.541195 (0.154513) | 1.759504 / 1.468490 (0.291014) | 0.708241 / 4.584777 (-3.876536) | 3.786724 / 3.745712 (0.041012) | 3.523731 / 5.269862 (-1.746131) | 1.899474 / 4.565676 (-2.666203) | 0.086680 / 0.424275 (-0.337595) | 0.012232 / 0.007607 (0.004625) | 0.508507 / 0.226044 (0.282462) | 5.086320 / 2.268929 (2.817391) | 2.234906 / 55.444624 (-53.209718) | 1.911090 / 6.876477 (-4.965386) | 1.989232 / 2.142072 (-0.152841) | 0.863660 / 4.805227 (-3.941567) | 0.169334 / 6.500664 (-6.331330) | 0.063273 / 0.075469 (-0.012196) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.237590 / 1.841788 (-0.604198) | 15.417631 / 8.074308 (7.343323) | 15.235308 / 10.191392 (5.043916) | 0.209431 / 0.680424 (-0.470993) | 0.029214 / 0.534201 (-0.504987) | 0.444767 / 0.579283 (-0.134516) | 0.447776 / 0.434364 (0.013413) | 0.538440 / 0.540337 (-0.001897) | 0.635760 / 1.386936 (-0.751176) |

PyArrow==latest

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.007758 / 0.011353 (-0.003594) | 0.005539 / 0.011008 (-0.005469) | 0.077011 / 0.038508 (0.038503) | 0.034305 / 0.023109 (0.011196) | 0.363352 / 0.275898 (0.087454) | 0.411882 / 0.323480 (0.088403) | 0.006286 / 0.007986 (-0.001700) | 0.004378 / 0.004328 (0.000050) | 0.075504 / 0.004250 (0.071253) | 0.052728 / 0.037052 (0.015675) | 0.370122 / 0.258489 (0.111633) | 0.421910 / 0.293841 (0.128069) | 0.038444 / 0.128546 (-0.090102) | 0.012602 / 0.075646 (-0.063045) | 0.088540 / 0.419271 (-0.330731) | 0.060321 / 0.043533 (0.016788) | 0.350502 / 0.255139 (0.095363) | 0.393211 / 0.283200 (0.110011) | 0.113057 / 0.141683 (-0.028626) | 1.453275 / 1.452155 (0.001120) | 1.541033 / 1.492716 (0.048317) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.333603 / 0.018006 (0.315597) | 0.510548 / 0.000490 (0.510058) | 0.003573 / 0.000200 (0.003373) | 0.000116 / 0.000054 (0.000061) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.032783 / 0.037411 (-0.004628) | 0.111943 / 0.014526 (0.097418) | 0.127154 / 0.176557 (-0.049403) | 0.171716 / 0.737135 (-0.565420) | 0.132441 / 0.296338 (-0.163898) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.439110 / 0.215209 (0.223901) | 4.440874 / 2.077655 (2.363220) | 2.145850 / 1.504120 (0.641730) | 1.909566 / 1.541195 (0.368371) | 2.032199 / 1.468490 (0.563709) | 0.711295 / 4.584777 (-3.873482) | 3.845729 / 3.745712 (0.100017) | 3.583555 / 5.269862 (-1.686307) | 1.836856 / 4.565676 (-2.728820) | 0.085966 / 0.424275 (-0.338309) | 0.012479 / 0.007607 (0.004872) | 0.545379 / 0.226044 (0.319334) | 5.425724 / 2.268929 (3.156796) | 2.648304 / 55.444624 (-52.796321) | 2.286369 / 6.876477 (-4.590108) | 2.367714 / 2.142072 (0.225642) | 0.831035 / 4.805227 (-3.974192) | 0.167603 / 6.500664 (-6.333061) | 0.064721 / 0.075469 (-0.010748) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.244495 / 1.841788 (-0.597292) | 15.304267 / 8.074308 (7.229958) | 13.912185 / 10.191392 (3.720793) | 0.156459 / 0.680424 (-0.523965) | 0.019181 / 0.534201 (-0.515019) | 0.425940 / 0.579283 (-0.153343) | 0.427956 / 0.434364 (-0.006408) | 0.529126 / 0.540337 (-0.011212) | 0.628360 / 1.386936 (-0.758576) |

![](https://cml.dev/watermark.png#da31f6ee02af29d92ee5541e4a3fc388c3d9abfc "CML watermark")

Otherwise it would show a `Map` progress bar, since it uses `map` under the hood


Use default audio resampling type

_The documentation is not available anymore as the PR was closed or merged._

Show benchmarks

PyArrow==6.0.0

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.008730 / 0.011353 (-0.002623) | 0.004551 / 0.011008 (-0.006457) | 0.100206 / 0.038508 (0.061698) | 0.030264 / 0.023109 (0.007154) | 0.303310 / 0.275898 (0.027412) | 0.339040 / 0.323480 (0.015560) | 0.006923 / 0.007986 (-0.001063) | 0.004707 / 0.004328 (0.000379) | 0.077822 / 0.004250 (0.073571) | 0.034368 / 0.037052 (-0.002684) | 0.303125 / 0.258489 (0.044636) | 0.348322 / 0.293841 (0.054481) | 0.033831 / 0.128546 (-0.094715) | 0.011459 / 0.075646 (-0.064187) | 0.322092 / 0.419271 (-0.097180) | 0.047720 / 0.043533 (0.004187) | 0.304849 / 0.255139 (0.049710) | 0.330767 / 0.283200 (0.047567) | 0.087362 / 0.141683 (-0.054321) | 1.536095 / 1.452155 (0.083941) | 1.599979 / 1.492716 (0.107263) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.188985 / 0.018006 (0.170979) | 0.410775 / 0.000490 (0.410286) | 0.004215 / 0.000200 (0.004015) | 0.000086 / 0.000054 (0.000032) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.023124 / 0.037411 (-0.014287) | 0.096962 / 0.014526 (0.082436) | 0.104070 / 0.176557 (-0.072486) | 0.141248 / 0.737135 (-0.595887) | 0.108534 / 0.296338 (-0.187804) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.417118 / 0.215209 (0.201909) | 4.167808 / 2.077655 (2.090154) | 2.016540 / 1.504120 (0.512420) | 1.847812 / 1.541195 (0.306617) | 1.967023 / 1.468490 (0.498532) | 0.689262 / 4.584777 (-3.895515) | 3.378747 / 3.745712 (-0.366965) | 1.854126 / 5.269862 (-3.415735) | 1.152102 / 4.565676 (-3.413575) | 0.081839 / 0.424275 (-0.342437) | 0.012426 / 0.007607 (0.004819) | 0.521334 / 0.226044 (0.295289) | 5.230593 / 2.268929 (2.961664) | 2.269386 / 55.444624 (-53.175238) | 1.965631 / 6.876477 (-4.910846) | 2.028994 / 2.142072 (-0.113079) | 0.802142 / 4.805227 (-4.003085) | 0.147954 / 6.500664 (-6.352710) | 0.065031 / 0.075469 (-0.010438) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.235289 / 1.841788 (-0.606499) | 13.723507 / 8.074308 (5.649199) | 14.197923 / 10.191392 (4.006531) | 0.147950 / 0.680424 (-0.532473) | 0.028332 / 0.534201 (-0.505869) | 0.400180 / 0.579283 (-0.179103) | 0.418970 / 0.434364 (-0.015393) | 0.478381 / 0.540337 (-0.061957) | 0.576138 / 1.386936 (-0.810798) |

PyArrow==latest

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.006548 / 0.011353 (-0.004805) | 0.004567 / 0.011008 (-0.006441) | 0.075658 / 0.038508 (0.037150) | 0.027190 / 0.023109 (0.004080) | 0.363417 / 0.275898 (0.087518) | 0.399575 / 0.323480 (0.076095) | 0.004982 / 0.007986 (-0.003004) | 0.003364 / 0.004328 (-0.000964) | 0.074392 / 0.004250 (0.070142) | 0.038839 / 0.037052 (0.001787) | 0.361133 / 0.258489 (0.102644) | 0.408557 / 0.293841 (0.114717) | 0.031468 / 0.128546 (-0.097078) | 0.011645 / 0.075646 (-0.064001) | 0.085145 / 0.419271 (-0.334126) | 0.041775 / 0.043533 (-0.001758) | 0.348624 / 0.255139 (0.093485) | 0.389610 / 0.283200 (0.106410) | 0.088576 / 0.141683 (-0.053107) | 1.511208 / 1.452155 (0.059054) | 1.560568 / 1.492716 (0.067852) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.185017 / 0.018006 (0.167011) | 0.407543 / 0.000490 (0.407053) | 0.002486 / 0.000200 (0.002286) | 0.000076 / 0.000054 (0.000021) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.025181 / 0.037411 (-0.012231) | 0.099056 / 0.014526 (0.084530) | 0.108597 / 0.176557 (-0.067959) | 0.144664 / 0.737135 (-0.592471) | 0.110417 / 0.296338 (-0.185922) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.434302 / 0.215209 (0.219093) | 4.327840 / 2.077655 (2.250185) | 2.059939 / 1.504120 (0.555819) | 1.853267 / 1.541195 (0.312072) | 1.906616 / 1.468490 (0.438126) | 0.700165 / 4.584777 (-3.884611) | 3.439216 / 3.745712 (-0.306496) | 2.792034 / 5.269862 (-2.477827) | 1.424852 / 4.565676 (-3.140824) | 0.083926 / 0.424275 (-0.340349) | 0.013943 / 0.007607 (0.006336) | 0.535964 / 0.226044 (0.309920) | 5.368671 / 2.268929 (3.099743) | 2.497027 / 55.444624 (-52.947597) | 2.166222 / 6.876477 (-4.710254) | 2.183766 / 2.142072 (0.041693) | 0.805886 / 4.805227 (-3.999341) | 0.152474 / 6.500664 (-6.348190) | 0.067354 / 0.075469 (-0.008115) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.284052 / 1.841788 (-0.557736) | 13.714066 / 8.074308 (5.639758) | 14.195212 / 10.191392 (4.003820) | 0.151815 / 0.680424 (-0.528609) | 0.016847 / 0.534201 (-0.517354) | 0.391174 / 0.579283 (-0.188109) | 0.409784 / 0.434364 (-0.024580) | 0.473880 / 0.540337 (-0.066458) | 0.561016 / 1.386936 (-0.825920) |

![](https://cml.dev/watermark.png#47ab08d9f06abd5bc23bddaa4875b93e926dd3b1 "CML watermark")

Show benchmarks

PyArrow==6.0.0

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.010284 / 0.011353 (-0.001068) | 0.005654 / 0.011008 (-0.005355) | 0.100522 / 0.038508 (0.062014) | 0.039201 / 0.023109 (0.016092) | 0.320831 / 0.275898 (0.044933) | 0.365351 / 0.323480 (0.041871) | 0.009066 / 0.007986 (0.001080) | 0.005805 / 0.004328 (0.001476) | 0.076969 / 0.004250 (0.072719) | 0.045813 / 0.037052 (0.008760) | 0.327115 / 0.258489 (0.068626) | 0.362823 / 0.293841 (0.068982) | 0.040521 / 0.128546 (-0.088025) | 0.013166 / 0.075646 (-0.062481) | 0.358579 / 0.419271 (-0.060692) | 0.051753 / 0.043533 (0.008220) | 0.323741 / 0.255139 (0.068602) | 0.360211 / 0.283200 (0.077011) | 0.111534 / 0.141683 (-0.030149) | 1.594887 / 1.452155 (0.142732) | 1.651516 / 1.492716 (0.158799) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.012051 / 0.018006 (-0.005956) | 0.475316 / 0.000490 (0.474826) | 0.004804 / 0.000200 (0.004604) | 0.000100 / 0.000054 (0.000046) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.027480 / 0.037411 (-0.009931) | 0.112022 / 0.014526 (0.097496) | 0.121539 / 0.176557 (-0.055017) | 0.166327 / 0.737135 (-0.570809) | 0.132575 / 0.296338 (-0.163763) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.418322 / 0.215209 (0.203113) | 4.149463 / 2.077655 (2.071808) | 1.890901 / 1.504120 (0.386781) | 1.682521 / 1.541195 (0.141327) | 1.716331 / 1.468490 (0.247841) | 0.729176 / 4.584777 (-3.855601) | 4.173303 / 3.745712 (0.427591) | 2.166249 / 5.269862 (-3.103612) | 1.384623 / 4.565676 (-3.181053) | 0.095486 / 0.424275 (-0.328789) | 0.013800 / 0.007607 (0.006193) | 0.573917 / 0.226044 (0.347872) | 5.348843 / 2.268929 (3.079914) | 2.421716 / 55.444624 (-53.022909) | 2.002048 / 6.876477 (-4.874428) | 2.079493 / 2.142072 (-0.062579) | 0.882818 / 4.805227 (-3.922409) | 0.172936 / 6.500664 (-6.327728) | 0.068384 / 0.075469 (-0.007085) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.285704 / 1.841788 (-0.556084) | 16.036346 / 8.074308 (7.962038) | 15.181557 / 10.191392 (4.990165) | 0.194044 / 0.680424 (-0.486380) | 0.033128 / 0.534201 (-0.501073) | 0.480290 / 0.579283 (-0.098993) | 0.497525 / 0.434364 (0.063161) | 0.602304 / 0.540337 (0.061966) | 0.754273 / 1.386936 (-0.632663) |

PyArrow==latest

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.007263 / 0.011353 (-0.004090) | 0.005164 / 0.011008 (-0.005845) | 0.079833 / 0.038508 (0.041325) | 0.033974 / 0.023109 (0.010865) | 0.382057 / 0.275898 (0.106159) | 0.402924 / 0.323480 (0.079444) | 0.007273 / 0.007986 (-0.000712) | 0.004378 / 0.004328 (0.000049) | 0.080556 / 0.004250 (0.076305) | 0.047376 / 0.037052 (0.010324) | 0.379044 / 0.258489 (0.120555) | 0.422135 / 0.293841 (0.128294) | 0.038294 / 0.128546 (-0.090252) | 0.013974 / 0.075646 (-0.061672) | 0.094936 / 0.419271 (-0.324335) | 0.051033 / 0.043533 (0.007501) | 0.368197 / 0.255139 (0.113058) | 0.409627 / 0.283200 (0.126427) | 0.107365 / 0.141683 (-0.034318) | 1.537501 / 1.452155 (0.085346) | 1.618021 / 1.492716 (0.125305) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.227187 / 0.018006 (0.209181) | 0.473226 / 0.000490 (0.472736) | 0.006532 / 0.000200 (0.006332) | 0.000121 / 0.000054 (0.000066) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.029814 / 0.037411 (-0.007597) | 0.121113 / 0.014526 (0.106587) | 0.125107 / 0.176557 (-0.051450) | 0.167008 / 0.737135 (-0.570127) | 0.128720 / 0.296338 (-0.167619) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.452158 / 0.215209 (0.236949) | 4.507087 / 2.077655 (2.429433) | 2.193910 / 1.504120 (0.689790) | 1.991234 / 1.541195 (0.450039) | 2.120256 / 1.468490 (0.651766) | 0.726664 / 4.584777 (-3.858113) | 4.213148 / 3.745712 (0.467436) | 4.082857 / 5.269862 (-1.187005) | 1.741018 / 4.565676 (-2.824658) | 0.090176 / 0.424275 (-0.334099) | 0.013221 / 0.007607 (0.005614) | 0.558868 / 0.226044 (0.332824) | 5.617242 / 2.268929 (3.348313) | 2.985430 / 55.444624 (-52.459194) | 2.623136 / 6.876477 (-4.253341) | 2.383177 / 2.142072 (0.241105) | 0.917237 / 4.805227 (-3.887990) | 0.178774 / 6.500664 (-6.321890) | 0.064707 / 0.075469 (-0.010762) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.365402 / 1.841788 (-0.476385) | 16.035773 / 8.074308 (7.961465) | 13.917612 / 10.191392 (3.726220) | 0.152191 / 0.680424 (-0.528233) | 0.020734 / 0.534201 (-0.513467) | 0.442055 / 0.579283 (-0.137228) | 0.470588 / 0.434364 (0.036224) | 0.563433 / 0.540337 (0.023096) | 0.651161 / 1.386936 (-0.735775) |

![](https://cml.dev/watermark.png#6ab909a44b723fe0a8a586beafc8c5cbf9c91c21 "CML watermark")

If it's good for you @polinaeterna I'd like to merge it and then run the `transformers` CI to see if it changes anything

Show benchmarks

PyArrow==6.0.0

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.008829 / 0.011353 (-0.002524) | 0.004652 / 0.011008 (-0.006356) | 0.102505 / 0.038508 (0.063997) | 0.030164 / 0.023109 (0.007054) | 0.306551 / 0.275898 (0.030653) | 0.368920 / 0.323480 (0.045440) | 0.007084 / 0.007986 (-0.000902) | 0.003545 / 0.004328 (-0.000783) | 0.079402 / 0.004250 (0.075152) | 0.035296 / 0.037052 (-0.001756) | 0.312010 / 0.258489 (0.053520) | 0.348773 / 0.293841 (0.054932) | 0.034622 / 0.128546 (-0.093924) | 0.011727 / 0.075646 (-0.063920) | 0.326911 / 0.419271 (-0.092361) | 0.043832 / 0.043533 (0.000300) | 0.306357 / 0.255139 (0.051218) | 0.328744 / 0.283200 (0.045544) | 0.091954 / 0.141683 (-0.049729) | 1.563989 / 1.452155 (0.111834) | 1.591901 / 1.492716 (0.099185) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.194955 / 0.018006 (0.176948) | 0.412864 / 0.000490 (0.412374) | 0.003710 / 0.000200 (0.003510) | 0.000081 / 0.000054 (0.000026) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.023132 / 0.037411 (-0.014279) | 0.099586 / 0.014526 (0.085060) | 0.105031 / 0.176557 (-0.071525) | 0.141206 / 0.737135 (-0.595929) | 0.111978 / 0.296338 (-0.184360) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.413729 / 0.215209 (0.198520) | 4.161713 / 2.077655 (2.084058) | 1.887442 / 1.504120 (0.383322) | 1.711847 / 1.541195 (0.170653) | 1.756833 / 1.468490 (0.288343) | 0.699239 / 4.584777 (-3.885538) | 3.346213 / 3.745712 (-0.399499) | 2.822289 / 5.269862 (-2.447573) | 1.475650 / 4.565676 (-3.090027) | 0.082800 / 0.424275 (-0.341475) | 0.012302 / 0.007607 (0.004695) | 0.523068 / 0.226044 (0.297024) | 5.242833 / 2.268929 (2.973904) | 2.310768 / 55.444624 (-53.133856) | 1.954629 / 6.876477 (-4.921847) | 2.015563 / 2.142072 (-0.126510) | 0.812613 / 4.805227 (-3.992614) | 0.149512 / 6.500664 (-6.351152) | 0.065162 / 0.075469 (-0.010307) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.270177 / 1.841788 (-0.571610) | 13.664765 / 8.074308 (5.590457) | 14.317968 / 10.191392 (4.126576) | 0.138135 / 0.680424 (-0.542289) | 0.028503 / 0.534201 (-0.505698) | 0.402921 / 0.579283 (-0.176362) | 0.400999 / 0.434364 (-0.033365) | 0.470983 / 0.540337 (-0.069355) | 0.544319 / 1.386936 (-0.842617) |

PyArrow==latest

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.006841 / 0.011353 (-0.004512) | 0.004570 / 0.011008 (-0.006439) | 0.076398 / 0.038508 (0.037890) | 0.028136 / 0.023109 (0.005027) | 0.339864 / 0.275898 (0.063966) | 0.375496 / 0.323480 (0.052016) | 0.004967 / 0.007986 (-0.003019) | 0.003411 / 0.004328 (-0.000917) | 0.075727 / 0.004250 (0.071476) | 0.040025 / 0.037052 (0.002973) | 0.340473 / 0.258489 (0.081984) | 0.384396 / 0.293841 (0.090555) | 0.031683 / 0.128546 (-0.096863) | 0.011752 / 0.075646 (-0.063894) | 0.085635 / 0.419271 (-0.333636) | 0.042764 / 0.043533 (-0.000769) | 0.339417 / 0.255139 (0.084278) | 0.364190 / 0.283200 (0.080991) | 0.093842 / 0.141683 (-0.047841) | 1.480999 / 1.452155 (0.028844) | 1.549752 / 1.492716 (0.057036) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.174146 / 0.018006 (0.156140) | 0.415459 / 0.000490 (0.414970) | 0.002854 / 0.000200 (0.002654) | 0.000077 / 0.000054 (0.000023) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.024671 / 0.037411 (-0.012740) | 0.101229 / 0.014526 (0.086703) | 0.108841 / 0.176557 (-0.067716) | 0.144530 / 0.737135 (-0.592606) | 0.112509 / 0.296338 (-0.183829) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.460561 / 0.215209 (0.245352) | 4.591139 / 2.077655 (2.513484) | 2.275535 / 1.504120 (0.771415) | 2.070976 / 1.541195 (0.529781) | 2.028766 / 1.468490 (0.560276) | 0.706166 / 4.584777 (-3.878611) | 3.408498 / 3.745712 (-0.337215) | 3.034665 / 5.269862 (-2.235197) | 1.586805 / 4.565676 (-2.978872) | 0.083355 / 0.424275 (-0.340920) | 0.012460 / 0.007607 (0.004853) | 0.565256 / 0.226044 (0.339212) | 5.662643 / 2.268929 (3.393715) | 2.697019 / 55.444624 (-52.747605) | 2.302044 / 6.876477 (-4.574433) | 2.373081 / 2.142072 (0.231009) | 0.809804 / 4.805227 (-3.995423) | 0.151481 / 6.500664 (-6.349183) | 0.066870 / 0.075469 (-0.008599) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.257293 / 1.841788 (-0.584495) | 14.059454 / 8.074308 (5.985146) | 13.783251 / 10.191392 (3.591859) | 0.140007 / 0.680424 (-0.540417) | 0.016624 / 0.534201 (-0.517577) | 0.381703 / 0.579283 (-0.197580) | 0.389032 / 0.434364 (-0.045332) | 0.466127 / 0.540337 (-0.074211) | 0.551052 / 1.386936 (-0.835884) |

![](https://cml.dev/watermark.png#4a767f7a3dffdf45886690b81c6e624146ae14da "CML watermark")

...instead of relying on the optional librosa dependency `resampy`.

It was only used for `_decode_non_mp3_file_like` anyway and not for the other ones - removing it fixes consistency between decoding methods (except torchaudio decoding)

Therefore I think it is a better solution than adding `resampy` as a dependency in https://github.com/huggingface/datasets/pull/5554

cc @polinaeterna


`.shuffle` throwing error `ValueError: Protocol not known: parent`

Hi ! The indices mapping is written in the same cachedirectory as your dataset.

Can you run this to show your current cache directory ?
```python
print(train_dataset.cache_files)
```

```
[{'filename': '.../train/dataset.arrow'}, {'filename': '.../train/dataset.arrow'}]
```

These are the actual paths where `.hf` files are stored.

I'm not aware of any `.hf` file ? What are you referring to ?

Also the error says "Protocol unknown: parent". Is there a chance you may have ended up with a path that contains this string `parent://` ?

I figured out why the issue was occuring but don't know the long-term fix.
The dataset I was trying to shuffle was loaded from a saved file which had `::` delimiter in filename. When I try with the exact same file without `::` in filename, it works as expected.
Quick fix is to not use colons in filename. But if this is expected behaviour, this should be clearly stated in the documentation.
Thanks for help @lhoestq

### Describe the bug

```
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
Cell In [16], line 1
----> 1 train_dataset = train_dataset.shuffle()

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/datasets/arrow_dataset.py:551, in transmit_format.<locals>.wrapper(*args, **kwargs)
    544 self_format = {
    545     "type": self._format_type,
    546     "format_kwargs": self._format_kwargs,
    547     "columns": self._format_columns,
    548     "output_all_columns": self._output_all_columns,
    549 }
    550 # apply actual function
--> 551 out: Union["Dataset", "DatasetDict"] = func(self, *args, **kwargs)
    552 datasets: List["Dataset"] = list(out.values()) if isinstance(out, dict) else [out]
    553 # re-apply format to the output

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/datasets/fingerprint.py:480, in fingerprint_transform.<locals>._fingerprint.<locals>.wrapper(*args, **kwargs)
    476             validate_fingerprint(kwargs[fingerprint_name])
    478 # Call actual function
--> 480 out = func(self, *args, **kwargs)
    482 # Update fingerprint of in-place transforms + update in-place history of transforms
    484 if inplace:  # update after calling func so that the fingerprint doesn't change if the function fails

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/datasets/arrow_dataset.py:3616, in Dataset.shuffle(self, seed, generator, keep_in_memory, load_from_cache_file, indices_cache_file_name, writer_batch_size, new_fingerprint)
   3610         return self._new_dataset_with_indices(
   3611             fingerprint=new_fingerprint, indices_cache_file_name=indices_cache_file_name
   3612         )
   3614 permutation = generator.permutation(len(self))
-> 3616 return self.select(
   3617     indices=permutation,
   3618     keep_in_memory=keep_in_memory,
   3619     indices_cache_file_name=indices_cache_file_name if not keep_in_memory else None,
   3620     writer_batch_size=writer_batch_size,
   3621     new_fingerprint=new_fingerprint,
   3622 )

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/datasets/arrow_dataset.py:551, in transmit_format.<locals>.wrapper(*args, **kwargs)
    544 self_format = {
    545     "type": self._format_type,
    546     "format_kwargs": self._format_kwargs,
    547     "columns": self._format_columns,
    548     "output_all_columns": self._output_all_columns,
    549 }
    550 # apply actual function
--> 551 out: Union["Dataset", "DatasetDict"] = func(self, *args, **kwargs)
    552 datasets: List["Dataset"] = list(out.values()) if isinstance(out, dict) else [out]
    553 # re-apply format to the output

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/datasets/fingerprint.py:480, in fingerprint_transform.<locals>._fingerprint.<locals>.wrapper(*args, **kwargs)
    476             validate_fingerprint(kwargs[fingerprint_name])
    478 # Call actual function
--> 480 out = func(self, *args, **kwargs)
    482 # Update fingerprint of in-place transforms + update in-place history of transforms
    484 if inplace:  # update after calling func so that the fingerprint doesn't change if the function fails

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/datasets/arrow_dataset.py:3266, in Dataset.select(self, indices, keep_in_memory, indices_cache_file_name, writer_batch_size, new_fingerprint)
   3263             return self._select_contiguous(start, length, new_fingerprint=new_fingerprint)
   3265 # If not contiguous, we need to create a new indices mapping
-> 3266 return self._select_with_indices_mapping(
   3267     indices,
   3268     keep_in_memory=keep_in_memory,
   3269     indices_cache_file_name=indices_cache_file_name,
   3270     writer_batch_size=writer_batch_size,
   3271     new_fingerprint=new_fingerprint,
   3272 )

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/datasets/arrow_dataset.py:551, in transmit_format.<locals>.wrapper(*args, **kwargs)
    544 self_format = {
    545     "type": self._format_type,
    546     "format_kwargs": self._format_kwargs,
    547     "columns": self._format_columns,
    548     "output_all_columns": self._output_all_columns,
    549 }
    550 # apply actual function
--> 551 out: Union["Dataset", "DatasetDict"] = func(self, *args, **kwargs)
    552 datasets: List["Dataset"] = list(out.values()) if isinstance(out, dict) else [out]
    553 # re-apply format to the output

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/datasets/fingerprint.py:480, in fingerprint_transform.<locals>._fingerprint.<locals>.wrapper(*args, **kwargs)
    476             validate_fingerprint(kwargs[fingerprint_name])
    478 # Call actual function
--> 480 out = func(self, *args, **kwargs)
    482 # Update fingerprint of in-place transforms + update in-place history of transforms
    484 if inplace:  # update after calling func so that the fingerprint doesn't change if the function fails

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/datasets/arrow_dataset.py:3389, in Dataset._select_with_indices_mapping(self, indices, keep_in_memory, indices_cache_file_name, writer_batch_size, new_fingerprint)
   3387     logger.info(f"Caching indices mapping at {indices_cache_file_name}")
   3388     tmp_file = tempfile.NamedTemporaryFile("wb", dir=os.path.dirname(indices_cache_file_name), delete=False)
-> 3389     writer = ArrowWriter(
   3390         path=tmp_file.name, writer_batch_size=writer_batch_size, fingerprint=new_fingerprint, unit="indices"
   3391     )
   3393 indices = indices if isinstance(indices, list) else list(indices)
   3395 size = len(self)

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/datasets/arrow_writer.py:315, in ArrowWriter.__init__(self, schema, features, path, stream, fingerprint, writer_batch_size, hash_salt, check_duplicates, disable_nullable, update_features, with_metadata, unit, embed_local_files, storage_options)
    312 self._disable_nullable = disable_nullable
    314 if stream is None:
--> 315     fs_token_paths = fsspec.get_fs_token_paths(path, storage_options=storage_options)
    316     self._fs: fsspec.AbstractFileSystem = fs_token_paths[0]
    317     self._path = (
    318         fs_token_paths[2][0]
    319         if not is_remote_filesystem(self._fs)
    320         else self._fs.unstrip_protocol(fs_token_paths[2][0])
    321     )

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/fsspec/core.py:593, in get_fs_token_paths(urlpath, mode, num, name_function, storage_options, protocol, expand)
    591 else:
    592     urlpath = stringify_path(urlpath)
--> 593 chain = _un_chain(urlpath, storage_options or {})
    594 if len(chain) > 1:
    595     inkwargs = {}

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/fsspec/core.py:330, in _un_chain(path, kwargs)
    328 for bit in reversed(bits):
    329     protocol = split_protocol(bit)[0] or "file"
--> 330     cls = get_filesystem_class(protocol)
    331     extra_kwargs = cls._get_kwargs_from_urls(bit)
    332     kws = kwargs.get(protocol, {})

File /opt/conda/envs/pytorch/lib/python3.9/site-packages/fsspec/registry.py:240, in get_filesystem_class(protocol)
    238 if protocol not in registry:
    239     if protocol not in known_implementations:
--> 240         raise ValueError("Protocol not known: %s" % protocol)
    241     bit = known_implementations[protocol]
    242     try:

ValueError: Protocol not known: parent

```

This is what the `train_dataset` object looks like
```
Dataset({
    features: ['label', 'input_ids', 'attention_mask'],
    num_rows: 364166
})
```

### Steps to reproduce the bug

The `train_dataset` obj is created by concatenating two datasets
And then shuffle is called, but it throws the mentioned error.

### Expected behavior

Should shuffle the dataset properly.

### Environment info

- `datasets` version: 2.6.1
- Platform: Linux-5.15.0-1022-aws-x86_64-with-glibc2.31
- Python version: 3.9.13
- PyArrow version: 10.0.0
- Pandas version: 1.4.4


Add resampy dep

Show benchmarks

PyArrow==6.0.0

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.008735 / 0.011353 (-0.002618) | 0.004514 / 0.011008 (-0.006494) | 0.099348 / 0.038508 (0.060840) | 0.030060 / 0.023109 (0.006951) | 0.302189 / 0.275898 (0.026291) | 0.339535 / 0.323480 (0.016055) | 0.007053 / 0.007986 (-0.000933) | 0.003420 / 0.004328 (-0.000909) | 0.076967 / 0.004250 (0.072717) | 0.034484 / 0.037052 (-0.002568) | 0.304349 / 0.258489 (0.045860) | 0.354032 / 0.293841 (0.060191) | 0.033552 / 0.128546 (-0.094995) | 0.011405 / 0.075646 (-0.064241) | 0.324773 / 0.419271 (-0.094498) | 0.041103 / 0.043533 (-0.002429) | 0.313559 / 0.255139 (0.058420) | 0.333251 / 0.283200 (0.050052) | 0.087580 / 0.141683 (-0.054103) | 1.460324 / 1.452155 (0.008169) | 1.552239 / 1.492716 (0.059523) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.183759 / 0.018006 (0.165753) | 0.413274 / 0.000490 (0.412784) | 0.001684 / 0.000200 (0.001484) | 0.000076 / 0.000054 (0.000022) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.023341 / 0.037411 (-0.014071) | 0.098368 / 0.014526 (0.083842) | 0.105522 / 0.176557 (-0.071034) | 0.151581 / 0.737135 (-0.585554) | 0.108980 / 0.296338 (-0.187358) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.417856 / 0.215209 (0.202647) | 4.167570 / 2.077655 (2.089915) | 1.843669 / 1.504120 (0.339549) | 1.643130 / 1.541195 (0.101936) | 1.717587 / 1.468490 (0.249097) | 0.696392 / 4.584777 (-3.888384) | 3.427617 / 3.745712 (-0.318096) | 2.816486 / 5.269862 (-2.453376) | 1.539519 / 4.565676 (-3.026157) | 0.082112 / 0.424275 (-0.342163) | 0.012425 / 0.007607 (0.004818) | 0.525325 / 0.226044 (0.299281) | 5.251710 / 2.268929 (2.982781) | 2.273641 / 55.444624 (-53.170983) | 1.931002 / 6.876477 (-4.945474) | 1.977253 / 2.142072 (-0.164819) | 0.804794 / 4.805227 (-4.000434) | 0.147324 / 6.500664 (-6.353340) | 0.064966 / 0.075469 (-0.010503) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.193173 / 1.841788 (-0.648615) | 13.705127 / 8.074308 (5.630819) | 14.348408 / 10.191392 (4.157016) | 0.165374 / 0.680424 (-0.515050) | 0.028288 / 0.534201 (-0.505913) | 0.402546 / 0.579283 (-0.176737) | 0.413503 / 0.434364 (-0.020861) | 0.473298 / 0.540337 (-0.067039) | 0.567571 / 1.386936 (-0.819365) |

PyArrow==latest

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.006735 / 0.011353 (-0.004618) | 0.004601 / 0.011008 (-0.006407) | 0.077414 / 0.038508 (0.038906) | 0.027402 / 0.023109 (0.004293) | 0.353469 / 0.275898 (0.077571) | 0.381697 / 0.323480 (0.058218) | 0.005076 / 0.007986 (-0.002910) | 0.004665 / 0.004328 (0.000336) | 0.076210 / 0.004250 (0.071960) | 0.039114 / 0.037052 (0.002061) | 0.354980 / 0.258489 (0.096491) | 0.389648 / 0.293841 (0.095807) | 0.031674 / 0.128546 (-0.096872) | 0.011752 / 0.075646 (-0.063894) | 0.086330 / 0.419271 (-0.332942) | 0.041530 / 0.043533 (-0.002003) | 0.343002 / 0.255139 (0.087863) | 0.365959 / 0.283200 (0.082760) | 0.091848 / 0.141683 (-0.049835) | 1.519427 / 1.452155 (0.067272) | 1.591529 / 1.492716 (0.098813) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.216458 / 0.018006 (0.198452) | 0.403326 / 0.000490 (0.402836) | 0.000432 / 0.000200 (0.000232) | 0.000059 / 0.000054 (0.000004) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.025106 / 0.037411 (-0.012305) | 0.101113 / 0.014526 (0.086588) | 0.108104 / 0.176557 (-0.068453) | 0.142342 / 0.737135 (-0.594794) | 0.112012 / 0.296338 (-0.184326) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.443128 / 0.215209 (0.227919) | 4.434707 / 2.077655 (2.357052) | 2.115434 / 1.504120 (0.611315) | 1.902865 / 1.541195 (0.361670) | 1.996981 / 1.468490 (0.528491) | 0.702485 / 4.584777 (-3.882292) | 3.419151 / 3.745712 (-0.326561) | 1.911977 / 5.269862 (-3.357884) | 1.178195 / 4.565676 (-3.387481) | 0.082985 / 0.424275 (-0.341290) | 0.012415 / 0.007607 (0.004808) | 0.546188 / 0.226044 (0.320144) | 5.463592 / 2.268929 (3.194664) | 2.574911 / 55.444624 (-52.869713) | 2.232883 / 6.876477 (-4.643594) | 2.284391 / 2.142072 (0.142319) | 0.807389 / 4.805227 (-3.997839) | 0.151461 / 6.500664 (-6.349203) | 0.067831 / 0.075469 (-0.007638) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.286605 / 1.841788 (-0.555183) | 14.230328 / 8.074308 (6.156020) | 13.944645 / 10.191392 (3.753253) | 0.153725 / 0.680424 (-0.526699) | 0.016876 / 0.534201 (-0.517325) | 0.386109 / 0.579283 (-0.193174) | 0.401798 / 0.434364 (-0.032566) | 0.467883 / 0.540337 (-0.072454) | 0.557788 / 1.386936 (-0.829148) |

![](https://cml.dev/watermark.png#c07f5c9268ce55d0e2022b018d5f44cfcedf1e43 "CML watermark")

Show benchmarks

PyArrow==6.0.0

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.009305 / 0.011353 (-0.002048) | 0.004978 / 0.011008 (-0.006031) | 0.101687 / 0.038508 (0.063179) | 0.035339 / 0.023109 (0.012230) | 0.294770 / 0.275898 (0.018872) | 0.355491 / 0.323480 (0.032011) | 0.008183 / 0.007986 (0.000197) | 0.004076 / 0.004328 (-0.000253) | 0.077552 / 0.004250 (0.073302) | 0.042891 / 0.037052 (0.005838) | 0.305727 / 0.258489 (0.047238) | 0.336508 / 0.293841 (0.042667) | 0.038525 / 0.128546 (-0.090022) | 0.011878 / 0.075646 (-0.063768) | 0.334136 / 0.419271 (-0.085136) | 0.047548 / 0.043533 (0.004015) | 0.301749 / 0.255139 (0.046610) | 0.318221 / 0.283200 (0.035022) | 0.099172 / 0.141683 (-0.042511) | 1.440638 / 1.452155 (-0.011516) | 1.503505 / 1.492716 (0.010789) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.202748 / 0.018006 (0.184742) | 0.433670 / 0.000490 (0.433181) | 0.003139 / 0.000200 (0.002939) | 0.000083 / 0.000054 (0.000028) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.025555 / 0.037411 (-0.011856) | 0.107156 / 0.014526 (0.092631) | 0.116706 / 0.176557 (-0.059851) | 0.153165 / 0.737135 (-0.583970) | 0.122614 / 0.296338 (-0.173724) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.398912 / 0.215209 (0.183703) | 3.965048 / 2.077655 (1.887394) | 1.894678 / 1.504120 (0.390558) | 1.706925 / 1.541195 (0.165730) | 1.745264 / 1.468490 (0.276774) | 0.691174 / 4.584777 (-3.893603) | 3.824583 / 3.745712 (0.078871) | 3.876806 / 5.269862 (-1.393055) | 1.898991 / 4.565676 (-2.666685) | 0.083687 / 0.424275 (-0.340588) | 0.012122 / 0.007607 (0.004514) | 0.510870 / 0.226044 (0.284825) | 5.094523 / 2.268929 (2.825594) | 2.265557 / 55.444624 (-53.179067) | 1.930882 / 6.876477 (-4.945594) | 2.016090 / 2.142072 (-0.125983) | 0.833108 / 4.805227 (-3.972119) | 0.164804 / 6.500664 (-6.335860) | 0.062864 / 0.075469 (-0.012605) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.192673 / 1.841788 (-0.649115) | 14.730393 / 8.074308 (6.656085) | 14.550736 / 10.191392 (4.359344) | 0.154451 / 0.680424 (-0.525973) | 0.029222 / 0.534201 (-0.504979) | 0.440939 / 0.579283 (-0.138345) | 0.442772 / 0.434364 (0.008409) | 0.543948 / 0.540337 (0.003610) | 0.638113 / 1.386936 (-0.748824) |

PyArrow==latest

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.007589 / 0.011353 (-0.003764) | 0.005208 / 0.011008 (-0.005800) | 0.073797 / 0.038508 (0.035289) | 0.034021 / 0.023109 (0.010912) | 0.366120 / 0.275898 (0.090222) | 0.397105 / 0.323480 (0.073625) | 0.005837 / 0.007986 (-0.002148) | 0.004028 / 0.004328 (-0.000301) | 0.073502 / 0.004250 (0.069252) | 0.051233 / 0.037052 (0.014181) | 0.359849 / 0.258489 (0.101360) | 0.397476 / 0.293841 (0.103635) | 0.036727 / 0.128546 (-0.091819) | 0.012249 / 0.075646 (-0.063397) | 0.086600 / 0.419271 (-0.332671) | 0.051156 / 0.043533 (0.007623) | 0.343441 / 0.255139 (0.088302) | 0.389672 / 0.283200 (0.106472) | 0.105180 / 0.141683 (-0.036503) | 1.439719 / 1.452155 (-0.012435) | 1.537779 / 1.492716 (0.045062) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.199429 / 0.018006 (0.181422) | 0.440837 / 0.000490 (0.440347) | 0.005333 / 0.000200 (0.005133) | 0.000099 / 0.000054 (0.000044) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.029581 / 0.037411 (-0.007830) | 0.113789 / 0.014526 (0.099263) | 0.123799 / 0.176557 (-0.052758) | 0.163772 / 0.737135 (-0.573363) | 0.127156 / 0.296338 (-0.169183) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.422803 / 0.215209 (0.207594) | 4.192400 / 2.077655 (2.114745) | 1.994561 / 1.504120 (0.490441) | 1.807085 / 1.541195 (0.265890) | 1.927539 / 1.468490 (0.459049) | 0.708804 / 4.584777 (-3.875973) | 3.790662 / 3.745712 (0.044950) | 3.667207 / 5.269862 (-1.602655) | 1.985107 / 4.565676 (-2.580570) | 0.086609 / 0.424275 (-0.337666) | 0.012613 / 0.007607 (0.005006) | 0.520167 / 0.226044 (0.294122) | 5.208657 / 2.268929 (2.939729) | 2.500383 / 55.444624 (-52.944241) | 2.129817 / 6.876477 (-4.746660) | 2.181205 / 2.142072 (0.039133) | 0.847925 / 4.805227 (-3.957303) | 0.168293 / 6.500664 (-6.332372) | 0.065066 / 0.075469 (-0.010403) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.261053 / 1.841788 (-0.580735) | 15.091644 / 8.074308 (7.017336) | 14.126139 / 10.191392 (3.934747) | 0.184956 / 0.680424 (-0.495468) | 0.017909 / 0.534201 (-0.516292) | 0.428918 / 0.579283 (-0.150365) | 0.429637 / 0.434364 (-0.004727) | 0.530900 / 0.540337 (-0.009437) | 0.627966 / 1.386936 (-0.758970) |

![](https://cml.dev/watermark.png#a72fd153d3499a5c5eda783673073c9f557f11e0 "CML watermark")

I think we should also suggest installing `resampy` in the error message thrown by the Audio feature when `librosa` is not installed.

exploring a better solution at https://github.com/huggingface/datasets/pull/5556

In librosa 0.10 they removed the `resmpy` dependency and set it to optional.

However it is necessary for resampling. I added it to the "audio" extra dependencies.


improved message error row formatting

Show benchmarks

PyArrow==6.0.0

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.014953 / 0.011353 (0.003600) | 0.006936 / 0.011008 (-0.004072) | 0.144039 / 0.038508 (0.105531) | 0.046719 / 0.023109 (0.023610) | 0.408832 / 0.275898 (0.132934) | 0.501419 / 0.323480 (0.177939) | 0.010190 / 0.007986 (0.002204) | 0.007618 / 0.004328 (0.003290) | 0.108553 / 0.004250 (0.104303) | 0.048484 / 0.037052 (0.011432) | 0.451586 / 0.258489 (0.193097) | 0.469864 / 0.293841 (0.176023) | 0.062159 / 0.128546 (-0.066387) | 0.019937 / 0.075646 (-0.055710) | 0.473718 / 0.419271 (0.054446) | 0.064777 / 0.043533 (0.021244) | 0.428675 / 0.255139 (0.173536) | 0.467665 / 0.283200 (0.184465) | 0.133528 / 0.141683 (-0.008155) | 1.978084 / 1.452155 (0.525930) | 1.965878 / 1.492716 (0.473162) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.290112 / 0.018006 (0.272106) | 0.629481 / 0.000490 (0.628992) | 0.003600 / 0.000200 (0.003400) | 0.000144 / 0.000054 (0.000089) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.030806 / 0.037411 (-0.006605) | 0.142376 / 0.014526 (0.127850) | 0.150020 / 0.176557 (-0.026537) | 0.193679 / 0.737135 (-0.543457) | 0.151329 / 0.296338 (-0.145009) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.629725 / 0.215209 (0.414516) | 6.656313 / 2.077655 (4.578659) | 2.712160 / 1.504120 (1.208041) | 2.328461 / 1.541195 (0.787266) | 2.452502 / 1.468490 (0.984012) | 1.353183 / 4.584777 (-3.231594) | 5.981521 / 3.745712 (2.235809) | 3.707186 / 5.269862 (-1.562676) | 2.460583 / 4.565676 (-2.105094) | 0.178300 / 0.424275 (-0.245975) | 0.020357 / 0.007607 (0.012750) | 0.813564 / 0.226044 (0.587520) | 8.465600 / 2.268929 (6.196671) | 3.491507 / 55.444624 (-51.953117) | 2.810781 / 6.876477 (-4.065695) | 3.100182 / 2.142072 (0.958110) | 1.539321 / 4.805227 (-3.265906) | 0.257735 / 6.500664 (-6.242929) | 0.082785 / 0.075469 (0.007316) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.766586 / 1.841788 (-0.075201) | 20.534638 / 8.074308 (12.460330) | 24.066176 / 10.191392 (13.874784) | 0.272419 / 0.680424 (-0.408005) | 0.048940 / 0.534201 (-0.485261) | 0.606004 / 0.579283 (0.026721) | 0.669684 / 0.434364 (0.235320) | 0.716858 / 0.540337 (0.176521) | 0.949394 / 1.386936 (-0.437542) |

PyArrow==latest

Show updated benchmarks!

### Benchmark: benchmark_array_xd.json

| metric | read_batch_formatted_as_numpy after write_array2d | read_batch_formatted_as_numpy after write_flattened_sequence | read_batch_formatted_as_numpy after write_nested_sequence | read_batch_unformated after write_array2d | read_batch_unformated after write_flattened_sequence | read_batch_unformated after write_nested_sequence | read_col_formatted_as_numpy after write_array2d | read_col_formatted_as_numpy after write_flattened_sequence | read_col_formatted_as_numpy after write_nested_sequence | read_col_unformated after write_array2d | read_col_unformated after write_flattened_sequence | read_col_unformated after write_nested_sequence | read_formatted_as_numpy after write_array2d | read_formatted_as_numpy after write_flattened_sequence | read_formatted_as_numpy after write_nested_sequence | read_unformated after write_array2d | read_unformated after write_flattened_sequence | read_unformated after write_nested_sequence | write_array2d | write_flattened_sequence | write_nested_sequence |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.010865 / 0.011353 (-0.000488) | 0.009855 / 0.011008 (-0.001153) | 0.105973 / 0.038508 (0.067465) | 0.039818 / 0.023109 (0.016709) | 0.544505 / 0.275898 (0.268607) | 0.511253 / 0.323480 (0.187773) | 0.007350 / 0.007986 (-0.000635) | 0.006950 / 0.004328 (0.002622) | 0.106548 / 0.004250 (0.102298) | 0.062740 / 0.037052 (0.025688) | 0.465881 / 0.258489 (0.207392) | 0.524426 / 0.293841 (0.230585) | 0.056052 / 0.128546 (-0.072495) | 0.020906 / 0.075646 (-0.054741) | 0.125337 / 0.419271 (-0.293935) | 0.064689 / 0.043533 (0.021156) | 0.483055 / 0.255139 (0.227916) | 0.518878 / 0.283200 (0.235678) | 0.127288 / 0.141683 (-0.014394) | 1.936246 / 1.452155 (0.484092) | 2.162532 / 1.492716 (0.669816) |

### Benchmark: benchmark_getitem\_100B.json

| metric | get_batch_of\_1024\_random_rows | get_batch_of\_1024\_rows | get_first_row | get_last_row |
|--------|---|---|---|---|
| new / old (diff) | 0.253691 / 0.018006 (0.235685) | 0.606244 / 0.000490 (0.605754) | 0.004251 / 0.000200 (0.004051) | 0.000126 / 0.000054 (0.000071) |

### Benchmark: benchmark_indices_mapping.json

| metric | select | shard | shuffle | sort | train_test_split |
|--------|---|---|---|---|---|
| new / old (diff) | 0.038356 / 0.037411 (0.000944) | 0.146690 / 0.014526 (0.132164) | 0.146545 / 0.176557 (-0.030012) | 0.218452 / 0.737135 (-0.518684) | 0.165314 / 0.296338 (-0.131025) |

### Benchmark: benchmark_iterating.json

| metric | read 5000 | read 50000 | read_batch 50000 10 | read_batch 50000 100 | read_batch 50000 1000 | read_formatted numpy 5000 | read_formatted pandas 5000 | read_formatted tensorflow 5000 | read_formatted torch 5000 | read_formatted_batch numpy 5000 10 | read_formatted_batch numpy 5000 1000 | shuffled read 5000 | shuffled read 50000 | shuffled read_batch 50000 10 | shuffled read_batch 50000 100 | shuffled read_batch 50000 1000 | shuffled read_formatted numpy 5000 | shuffled read_formatted_batch numpy 5000 10 | shuffled read_formatted_batch numpy 5000 1000 |
|--------|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 0.645768 / 0.215209 (0.430559) | 7.229186 / 2.077655 (5.151531) | 3.484778 / 1.504120 (1.980658) | 2.585310 / 1.541195 (1.044116) | 2.727670 / 1.468490 (1.259180) | 1.393416 / 4.584777 (-3.191361) | 6.448707 / 3.745712 (2.702995) | 3.433652 / 5.269862 (-1.836209) | 2.106450 / 4.565676 (-2.459226) | 0.143899 / 0.424275 (-0.280376) | 0.015097 / 0.007607 (0.007490) | 0.860960 / 0.226044 (0.634916) | 9.509725 / 2.268929 (7.240797) | 3.881601 / 55.444624 (-51.563024) | 3.156018 / 6.876477 (-3.720459) | 3.556330 / 2.142072 (1.414257) | 1.525940 / 4.805227 (-3.279287) | 0.264588 / 6.500664 (-6.236076) | 0.090327 / 0.075469 (0.014858) |

### Benchmark: benchmark_map_filter.json

| metric | filter | map fast-tokenizer batched | map identity | map identity batched | map no-op batched | map no-op batched numpy | map no-op batched pandas | map no-op batched pytorch | map no-op batched tensorflow |
|--------|---|---|---|---|---|---|---|---|---|
| new / old (diff) | 1.829761 / 1.841788 (-0.012027) | 21.037774 / 8.074308 (12.963466) | 24.464737 / 10.191392 (14.273345) | 0.394165 / 0.680424 (-0.286259) | 0.039286 / 0.534201 (-0.494915) | 0.546412 / 0.579283 (-0.032871) | 0.741760 / 0.434364 (0.307396) | 0.683969 / 0.540337 (0.143632) | 0.831392 / 1.386936 (-0.555544) |

![](https://cml.dev/watermark.png#e453eeac5239d0ff3e98adcba59a6724ee68b46b "CML watermark")

Solves  #5539