Products · Product
pandas
Raised as a usability problem by 103 people on Hacker News over 15 years (2012–2026), in 76 threads.
No issue was raised by at least 3 people in 3 threads this year.
- 1
- 2Multi-indexing is confusing to useUnreviewed
Every issue, all time, most people first
API is inconsistent, making it hard to learnUnreviewed
20122026- API is not always intuitive or natural for Python users2024-08-29
- Library APIs are quirky and sometimes strange and unintuitive to use2024-01-03
- Inconsistent API patterns that are hard to memorize, so everything must be looked up2023-10-07
Multi-indexing is confusing to useUnreviewed
20122026- Multi-index causes bugs and forces littered reset_index calls in non-financial code2025-12-02
- Multi-index is awful and forces repeated reset_index calls or bugs2025-12-02
- Has to relearn and look up multi-indexed dataframe operations every time2025-04-22
Dtype handling is hard to reason about and convert-heavyUnreviewed
20122026- Inconsistent parameter names and silent type conversions make pandas code fragile2025-10-22
- Pandas dtype handling is hard to reason about and convert-heavy2020-01-30
- Chained pandas calls become hard to read compared to dplyr2018-06-14
Selecting and joining data is unintuitive compared to SQLUnreviewed
20122026- Filtering with square brackets feels unnatural; join() behaves unexpectedly compared to SQL joins2021-08-07
- Selecting and joining data is unintuitive compared to SQL2021-02-07
- Joining requires setting indexes, joining, then resetting indexes, which is unintuitive and error-prone2019-03-10
Unreviewed issues were grouped by machine: Claude Haiku labelled each comment as a usability complaint, named what it's about and summed up the problem in a line, and a small model grouped similar problems. Nobody has checked them by hand. Expect mistakes.
The newest 50 complaints
- Simple tasks like computing win percentages are painfully unintuitive to write2026-10-10
- API is unintuitive; small query changes force rewriting the whole query2026-09-12
- Attempts to use Pandas and matplotlib/seaborn have been frustrating2026-08-18
- Abandoned notebooks with hundreds of df_final_2 variables make the code impossible to understand2026-07-16
- Implicit index alignment and reordering behaviour is confusing, forcing users to remember which operations change row labels2026-04-04
- Many inconsistent, constantly deprecated functions with dozens of keyword arguments2026-04-03
- Functions unpredictably return the index, forcing index=False every write and causing confusing bugs2026-04-03
- Group_keys option is under-documented and hard to reason about2026-04-03
- Pandas is horribly irregular and hard to work with as a query language2025-12-22
- Hard to form a mental model of what Pandas expects; unintuitive syntax and inconsistent method usage2025-12-03
- Multi-index causes bugs and forces littered reset_index calls in non-financial code2025-12-02
- Multi-index is awful and forces repeated reset_index calls or bugs2025-12-02
- Can't tell whether df[arg] filters rows, selects columns, or returns a Series without checking arg2025-11-14
- Inconsistent parameter names and silent type conversions make pandas code fragile2025-10-22
- Pandas feels confusing and counter-intuitive to a hobbyist user2025-10-22
- Has to relearn and look up multi-indexed dataframe operations every time2025-04-22
- Hard to use correctly, leading people to trial-and-error code2025-04-22
- Pandas API is messy and hard to work with2025-04-11
- Many foot guns and dozens of keyword arguments make the API hard to use correctly2024-11-20
- Common Pandas idiom for assignment is error-prone and hard to write safely2024-11-20
- Can't tell dataframe types or structure without stepping through in a debugger2024-11-16
- Fragmented field of alternatives makes it hard to choose one to switch to2024-08-29
- API is not always intuitive or natural for Python users2024-08-29
- Confusing API; window functions and groupby are hard to use, docs unhelpful2024-06-04
- Query method is hard to use because it lacks syntax highlighting, checking and completion2024-02-26
- Pandas has confusing multi index behaviour and poor interface choices people must work around2024-02-14
- Data wrangling in pandas is annoying compared to R's built-in approach2024-01-24
- Dislikes row names and finds pandas and R dataframes less intuitive to master2024-01-11
- No clear mental model, so users must experiment or ask AI to learn it2024-01-09
- Polymorphic parameters and returns, hidden defaults, and inconsistent in-place and copy variants make it hard to predict2024-01-09
- Library APIs are quirky and sometimes strange and unintuitive to use2024-01-03
- Looking at raw data in Jupyter with existing pandas tooling is cumbersome2023-11-26
- Inconsistent API patterns that are hard to memorize, so everything must be looked up2023-10-07
- Hard to know whether columns and types match when concatenating dataframes2023-05-17
- Same call sometimes returns a Series and sometimes a DataFrame, forcing extra type-checking code2023-05-17
- Too many ways to do the same thing and inconsistent API2023-02-28
- Examples are fragmented and confusing, making learning pandas painfully slow at first2023-02-26
- Pandas API is hard to use, worse than both R and Python alternatives2023-02-23
- Too many ways to do each thing; functions have many modes, complicated to use2023-01-22
- Inconsistent API that is hard to remember for simple transformations2023-01-08
- Bracket-heavy expressions are hard to follow; copy-vs-view behavior is opaque2023-01-08
- API is inconsistent and full of obscure options, hard to use correctly2023-01-08
- Hard to find which docs page answers a question; simple problems become long searches2022-11-16
- Has to relearn the API every time it is used2022-07-06
- Simple conditional column updates need many nested brackets, hard to write2022-06-27
- Silently converts unix timestamps to floats when a value is missing2022-05-03
- Confusing jargon like axes, labels and index, and users must manage index with drop or reset2022-05-02
- Hard to predict what operations mutate, and semantics feel hard to follow in production2022-05-01
- API feels unintuitive and inconsistent, a patchwork of hacks2022-05-01
- Multiple ways to do the same column assignment, and chaining calls forces awkward line breaks or parentheses2022-03-26