{"id":"9568efe4-17e6-4826-a1e3-0ec0b58da656","shortId":"s3uBUE","kind":"skill","title":"polars","tagline":"Fast in-memory DataFrame library for datasets that fit in RAM. Use when pandas is too slow but data still fits in memory. Lazy evaluation, parallel execution, Apache Arrow backend. Best for 1-100GB datasets, ETL pipelines, faster pandas replacement. For larger-than-RAM data use d","description":"# Polars\n\n## When to Use\n- You need a faster in-memory DataFrame workflow than pandas for data that still fits in RAM.\n- You are building ETL, analytics, or transformation pipelines that benefit from lazy evaluation and parallel execution.\n- You want expression-based tabular operations on top of Apache Arrow semantics.\n\n## Overview\n\nPolars is a lightning-fast DataFrame library for Python and Rust built on Apache Arrow. Work with Polars' expression-based API, lazy evaluation framework, and high-performance data manipulation capabilities for efficient data processing, pandas migration, and data pipeline optimization.\n\n## Quick Start\n\n### Installation and Basic Usage\n\nInstall Polars:\n```python\nuv pip install polars\n```\n\nBasic DataFrame creation and operations:\n```python\nimport polars as pl\n\n# Create DataFrame\ndf = pl.DataFrame({\n    \"name\": [\"Alice\", \"Bob\", \"Charlie\"],\n    \"age\": [25, 30, 35],\n    \"city\": [\"NY\", \"LA\", \"SF\"]\n})\n\n# Select columns\ndf.select(\"name\", \"age\")\n\n# Filter rows\ndf.filter(pl.col(\"age\") > 25)\n\n# Add computed columns\ndf.with_columns(\n    age_plus_10=pl.col(\"age\") + 10\n)\n```\n\n## Core Concepts\n\n### Expressions\n\nExpressions are the fundamental building blocks of Polars operations. They describe transformations on data and can be composed, reused, and optimized.\n\n**Key principles:**\n- Use `pl.col(\"column_name\")` to reference columns\n- Chain methods to build complex transformations\n- Expressions are lazy and only execute within contexts (select, with_columns, filter, group_by)\n\n**Example:**\n```python\n# Expression-based computation\ndf.select(\n    pl.col(\"name\"),\n    (pl.col(\"age\") * 12).alias(\"age_in_months\")\n)\n```\n\n### Lazy vs Eager Evaluation\n\n**Eager (DataFrame):** Operations execute immediately\n```python\ndf = pl.read_csv(\"file.csv\")  # Reads immediately\nresult = df.filter(pl.col(\"age\") > 25)  # Executes immediately\n```\n\n**Lazy (LazyFrame):** Operations build a query plan, optimized before execution\n```python\nlf = pl.scan_csv(\"file.csv\")  # Doesn't read yet\nresult = lf.filter(pl.col(\"age\") > 25).select(\"name\", \"age\")\ndf = result.collect()  # Now executes optimized query\n```\n\n**When to use lazy:**\n- Working with large datasets\n- Complex query pipelines\n- When only some columns/rows are needed\n- Performance is critical\n\n**Benefits of lazy evaluation:**\n- Automatic query optimization\n- Predicate pushdown\n- Projection pushdown\n- Parallel execution\n\nFor detailed concepts, load `references/core_concepts.md`.\n\n## Common Operations\n\n### Select\nSelect and manipulate columns:\n```python\n# Select specific columns\ndf.select(\"name\", \"age\")\n\n# Select with expressions\ndf.select(\n    pl.col(\"name\"),\n    (pl.col(\"age\") * 2).alias(\"double_age\")\n)\n\n# Select all columns matching a pattern\ndf.select(pl.col(\"^.*_id$\"))\n```\n\n### Filter\nFilter rows by conditions:\n```python\n# Single condition\ndf.filter(pl.col(\"age\") > 25)\n\n# Multiple conditions (cleaner than using &)\ndf.filter(\n    pl.col(\"age\") > 25,\n    pl.col(\"city\") == \"NY\"\n)\n\n# Complex conditions\ndf.filter(\n    (pl.col(\"age\") > 25) | (pl.col(\"city\") == \"LA\")\n)\n```\n\n### With Columns\nAdd or modify columns while preserving existing ones:\n```python\n# Add new columns\ndf.with_columns(\n    age_plus_10=pl.col(\"age\") + 10,\n    name_upper=pl.col(\"name\").str.to_uppercase()\n)\n\n# Parallel computation (all columns computed in parallel)\ndf.with_columns(\n    pl.col(\"value\") * 10,\n    pl.col(\"value\") * 100,\n)\n```\n\n### Group By and Aggregations\nGroup data and compute aggregations:\n```python\n# Basic grouping\ndf.group_by(\"city\").agg(\n    pl.col(\"age\").mean().alias(\"avg_age\"),\n    pl.len().alias(\"count\")\n)\n\n# Multiple group keys\ndf.group_by(\"city\", \"department\").agg(\n    pl.col(\"salary\").sum()\n)\n\n# Conditional aggregations\ndf.group_by(\"city\").agg(\n    (pl.col(\"age\") > 30).sum().alias(\"over_30\")\n)\n```\n\nFor detailed operation patterns, load `references/operations.md`.\n\n## Aggregations and Window Functions\n\n### Aggregation Functions\nCommon aggregations within `group_by` context:\n- `pl.len()` - count rows\n- `pl.col(\"x\").sum()` - sum values\n- `pl.col(\"x\").mean()` - average\n- `pl.col(\"x\").min()` / `pl.col(\"x\").max()` - extremes\n- `pl.first()` / `pl.last()` - first/last values\n\n### Window Functions with `over()`\nApply aggregations while preserving row count:\n```python\n# Add group statistics to each row\ndf.with_columns(\n    avg_age_by_city=pl.col(\"age\").mean().over(\"city\"),\n    rank_in_city=pl.col(\"salary\").rank().over(\"city\")\n)\n\n# Multiple grouping columns\ndf.with_columns(\n    group_avg=pl.col(\"value\").mean().over(\"category\", \"region\")\n)\n```\n\n**Mapping strategies:**\n- `group_to_rows` (default): Preserves original row order\n- `explode`: Faster but groups rows together\n- `join`: Creates list columns\n\n## Data I/O\n\n### Supported Formats\nPolars supports reading and writing:\n- CSV, Parquet, JSON, Excel\n- Databases (via connectors)\n- Cloud storage (S3, Azure, GCS)\n- Google BigQuery\n- Multiple/partitioned files\n\n### Common I/O Operations\n\n**CSV:**\n```python\n# Eager\ndf = pl.read_csv(\"file.csv\")\ndf.write_csv(\"output.csv\")\n\n# Lazy (preferred for large files)\nlf = pl.scan_csv(\"file.csv\")\nresult = lf.filter(...).select(...).collect()\n```\n\n**Parquet (recommended for performance):**\n```python\ndf = pl.read_parquet(\"file.parquet\")\ndf.write_parquet(\"output.parquet\")\n```\n\n**JSON:**\n```python\ndf = pl.read_json(\"file.json\")\ndf.write_json(\"output.json\")\n```\n\nFor comprehensive I/O documentation, load `references/io_guide.md`.\n\n## Transformations\n\n### Joins\nCombine DataFrames:\n```python\n# Inner join\ndf1.join(df2, on=\"id\", how=\"inner\")\n\n# Left join\ndf1.join(df2, on=\"id\", how=\"left\")\n\n# Join on different column names\ndf1.join(df2, left_on=\"user_id\", right_on=\"id\")\n```\n\n### Concatenation\nStack DataFrames:\n```python\n# Vertical (stack rows)\npl.concat([df1, df2], how=\"vertical\")\n\n# Horizontal (add columns)\npl.concat([df1, df2], how=\"horizontal\")\n\n# Diagonal (union with different schemas)\npl.concat([df1, df2], how=\"diagonal\")\n```\n\n### Pivot and Unpivot\nReshape data:\n```python\n# Pivot (wide format)\ndf.pivot(values=\"sales\", index=\"date\", columns=\"product\")\n\n# Unpivot (long format)\ndf.unpivot(index=\"id\", on=[\"col1\", \"col2\"])\n```\n\nFor detailed transformation examples, load `references/transformations.md`.\n\n## Pandas Migration\n\nPolars offers significant performance improvements over pandas with a cleaner API. Key differences:\n\n### Conceptual Differences\n- **No index**: Polars uses integer positions only\n- **Strict typing**: No silent type conversions\n- **Lazy evaluation**: Available via LazyFrame\n- **Parallel by default**: Operations parallelized automatically\n\n### Common Operation Mappings\n\n| Operation | Pandas | Polars |\n|-----------|--------|--------|\n| Select column | `df[\"col\"]` | `df.select(\"col\")` |\n| Filter | `df[df[\"col\"] > 10]` | `df.filter(pl.col(\"col\") > 10)` |\n| Add column | `df.assign(x=...)` | `df.with_columns(x=...)` |\n| Group by | `df.groupby(\"col\").agg(...)` | `df.group_by(\"col\").agg(...)` |\n| Window | `df.groupby(\"col\").transform(...)` | `df.with_columns(...).over(\"col\")` |\n\n### Key Syntax Patterns\n\n**Pandas sequential (slow):**\n```python\ndf.assign(\n    col_a=lambda df_: df_.value * 10,\n    col_b=lambda df_: df_.value * 100\n)\n```\n\n**Polars parallel (fast):**\n```python\ndf.with_columns(\n    col_a=pl.col(\"value\") * 10,\n    col_b=pl.col(\"value\") * 100,\n)\n```\n\nFor comprehensive migration guide, load `references/pandas_migration.md`.\n\n## Best Practices\n\n### Performance Optimization\n\n1. **Use lazy evaluation for large datasets:**\n   ```python\n   lf = pl.scan_csv(\"large.csv\")  # Don't use read_csv\n   result = lf.filter(...).select(...).collect()\n   ```\n\n2. **Avoid Python functions in hot paths:**\n   - Stay within expression API for parallelization\n   - Use `.map_elements()` only when necessary\n   - Prefer native Polars operations\n\n3. **Use streaming for very large data:**\n   ```python\n   lf.collect(streaming=True)\n   ```\n\n4. **Select only needed columns early:**\n   ```python\n   # Good: Select columns early\n   lf.select(\"col1\", \"col2\").filter(...)\n\n   # Bad: Filter on all columns first\n   lf.filter(...).select(\"col1\", \"col2\")\n   ```\n\n5. **Use appropriate data types:**\n   - Categorical for low-cardinality strings\n   - Appropriate integer sizes (i32 vs i64)\n   - Date types for temporal data\n\n### Expression Patterns\n\n**Conditional operations:**\n```python\npl.when(condition).then(value).otherwise(other_value)\n```\n\n**Column operations across multiple columns:**\n```python\ndf.select(pl.col(\"^.*_value$\") * 2)  # Regex pattern\n```\n\n**Null handling:**\n```python\npl.col(\"x\").fill_null(0)\npl.col(\"x\").is_null()\npl.col(\"x\").drop_nulls()\n```\n\nFor additional best practices and patterns, load `references/best_practices.md`.\n\n## Resources\n\nThis skill includes comprehensive reference documentation:\n\n### references/\n- `core_concepts.md` - Detailed explanations of expressions, lazy evaluation, and type system\n- `operations.md` - Comprehensive guide to all common operations with examples\n- `pandas_migration.md` - Complete migration guide from pandas to Polars\n- `io_guide.md` - Data I/O operations for all supported formats\n- `transformations.md` - Joins, concatenation, pivots, and reshaping operations\n- `best_practices.md` - Performance optimization tips and common patterns\n\nLoad these references as needed when users require detailed information about specific topics.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["polars","antigravity","awesome","skills","sickn33","agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity-skills"],"capabilities":["skill","source-sickn33","skill-polars","topic-agent-skills","topic-agentic-skills","topic-ai-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workflows","topic-antigravity","topic-antigravity-skills","topic-claude-code","topic-claude-code-skills","topic-codex-cli","topic-codex-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/polars","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add sickn33/antigravity-awesome-skills","source_repo":"https://github.com/sickn33/antigravity-awesome-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 34616 github stars · SKILL.md body (9,630 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-23T00:51:24.201Z","embedding":null,"createdAt":"2026-04-18T21:42:31.098Z","updatedAt":"2026-04-23T00:51:24.201Z","lastSeenAt":"2026-04-23T00:51:24.201Z","tsv":"'-100':36 '0':1082 '1':35,949 '10':204,207,457,460,478,872,876,915,933 '100':481,922,938 '12':272 '2':393,970,1072 '25':179,196,297,323,417,426,435 '3':993 '30':180,526,530 '35':181 '4':1004 '5':1029 'across':1065 'add':197,441,450,583,767,877 'addit':1092 'age':178,190,195,202,206,271,274,296,322,326,384,392,396,416,425,434,455,459,499,503,525,592,596 'agg':497,514,523,888,892 'aggreg':485,490,519,537,541,544,577 'alia':273,394,501,505,528 'alic':175 'analyt':78 'apach':30,100,118 'api':126,827,980 'appli':576 'appropri':1031,1040 'arrow':31,101,119 'ask':1202 'automat':357,855 'avail':847 'averag':560 'avg':502,591,614 'avoid':971 'azur':660 'b':917,935 'backend':32 'bad':1019 'base':94,125,265 'basic':151,160,492 'benefit':83,353 'best':33,945,1093 'best_practices.md':1149 'bigqueri':663 'block':216 'bob':176 'boundari':1210 'build':76,215,244,303 'built':116 'capabl':136 'cardin':1038 'categor':1034 'categori':619 'chain':241 'charli':177 'citi':182,428,437,496,512,522,594,599,602,607 'clarif':1204 'cleaner':420,826 'clear':1177 'cloud':657 'col':865,867,871,875,887,891,895,900,909,916,929,934 'col1':807,1016,1027 'col2':808,1017,1028 'collect':691,969 'column':187,199,201,236,240,257,377,381,399,440,444,452,454,470,475,590,610,612,640,743,768,798,863,878,882,898,928,1008,1013,1023,1063,1067 'columns/rows':347 'combin':721 'common':371,543,666,856,1122,1154 'complet':1127 'complex':245,341,430 'compos':228 'comprehens':714,940,1103,1118 'comput':198,266,468,471,489 'concaten':754,1144 'concept':209,368 'conceptu':830 'condit':410,413,419,431,518,1053,1057 'connector':656 'context':254,548 'convers':844 'core':208 'core_concepts.md':1107 'count':506,550,581 'creat':170,638 'creation':162 'criteria':1213 'critic':352 'csv':289,313,650,669,674,677,686,959,965 'd':51 'data':21,49,68,134,139,144,224,487,641,788,999,1032,1050,1135 'databas':654 'datafram':6,63,110,161,171,282,722,756 'dataset':9,38,340,955 'date':797,1046 'default':626,852 'depart':513 'describ':221,1181 'detail':367,532,810,1108,1164 'df':172,287,327,672,697,706,864,869,870,912,913,919,920 'df.assign':879,908 'df.filter':193,294,414,423,432,873 'df.group':494,510,520,889 'df.groupby':886,894 'df.pivot':793 'df.select':188,267,382,388,403,866,1069 'df.unpivot':803 'df.with':200,453,474,589,611,881,897,927 'df.write':676,701,710 'df1':762,770,780 'df1.join':726,734,745 'df2':727,735,746,763,771,781 'diagon':774,783 'differ':742,777,829,831 'document':716,1105 'doesn':315 'doubl':395 'drop':1089 'eager':279,281,671 'earli':1009,1014 'effici':138 'element':985 'environ':1193 'environment-specif':1192 'etl':39,77 'evalu':27,86,128,280,356,846,952,1113 'exampl':261,812,1125 'excel':653 'execut':29,89,252,284,298,309,330,365 'exist':447 'expert':1198 'explan':1109 'explod':631 'express':93,124,210,211,247,264,387,979,1051,1111 'expression-bas':92,123,263 'extrem':567 'fast':2,109,925 'faster':41,59,632 'file':665,683 'file.csv':290,314,675,687 'file.json':709 'file.parquet':700 'fill':1080 'filter':191,258,406,407,868,1018,1020 'first':1024 'first/last':570 'fit':11,23,71 'format':644,792,802,1141 'framework':129 'function':540,542,573,973 'fundament':214 'gb':37 'gcs':661 'good':1011 'googl':662 'group':259,482,486,493,508,546,584,609,613,623,634,884 'guid':942,1119,1129 'handl':1076 'high':132 'high-perform':131 'horizont':766,773 'hot':975 'i/o':642,667,715,1136 'i32':1043 'i64':1045 'id':405,729,737,750,753,805 'immedi':285,292,299 'import':166 'improv':821 'in-memori':3,60 'includ':1102 'index':796,804,833 'inform':1165 'inner':724,731 'input':1207 'instal':149,153,158 'integ':836,1041 'io_guide.md':1134 'join':637,720,725,733,740,1143 'json':652,704,708,711 'key':232,509,828,901 'la':184,438 'lambda':911,918 'larg':339,682,954,998 'large.csv':960 'larger':46 'larger-than-ram':45 'lazi':26,85,127,249,277,300,336,355,679,845,951,1112 'lazyfram':301,849 'left':732,739,747 'lf':311,684,957 'lf.collect':1001 'lf.filter':320,689,967,1025 'lf.select':1015 'librari':7,111 'lightn':108 'lightning-fast':107 'limit':1169 'list':639 'load':369,535,717,813,943,1097,1156 'long':801 'low':1037 'low-cardin':1036 'manipul':135,376 'map':621,858,984 'match':400,1178 'max':566 'mean':500,559,597,617 'memori':5,25,62 'method':242 'migrat':142,816,941,1128 'min':563 'miss':1215 'modifi':443 'month':276 'multipl':418,507,608,1066 'multiple/partitioned':664 'name':174,189,237,269,325,383,390,461,464,744 'nativ':990 'necessari':988 'need':57,349,1007,1160 'new':451 'null':1075,1081,1086,1090 'ny':183,429 'offer':818 'one':448 'oper':96,164,219,283,302,372,533,668,853,857,859,992,1054,1064,1123,1137,1148 'operations.md':1117 'optim':146,231,307,331,359,948,1151 'order':630 'origin':628 'otherwis':1060 'output':1187 'output.csv':678 'output.json':712 'output.parquet':703 'overview':103 'panda':16,42,66,141,815,823,860,904,1131 'pandas_migration.md':1126 'parallel':28,88,364,467,473,850,854,924,982 'parquet':651,692,699,702 'path':976 'pattern':402,534,903,1052,1074,1096,1155 'perform':133,350,695,820,947,1150 'permiss':1208 'pip':157 'pipelin':40,81,145,343 'pivot':784,790,1145 'pl':169 'pl.col':194,205,235,268,270,295,321,389,391,404,415,424,427,433,436,458,463,476,479,498,515,524,552,557,561,564,595,603,615,874,931,936,1070,1078,1083,1087 'pl.concat':761,769,779 'pl.dataframe':173 'pl.first':568 'pl.last':569 'pl.len':504,549 'pl.read':288,673,698,707 'pl.scan':312,685,958 'pl.when':1056 'plan':306 'plus':203,456 'polar':1,52,104,122,154,159,167,218,645,817,834,861,923,991,1133 'posit':837 'practic':946,1094 'predic':360 'prefer':680,989 'preserv':446,579,627 'principl':233 'process':140 'product':799 'project':362 'pushdown':361,363 'python':113,155,165,262,286,310,378,411,449,491,582,670,696,705,723,757,789,907,926,956,972,1000,1010,1055,1068,1077 'queri':305,332,342,358 'quick':147 'ram':13,48,73 'rank':600,605 'read':291,317,647,964 'recommend':693 'refer':239,1104,1106,1158 'references/best_practices.md':1098 'references/core_concepts.md':370 'references/io_guide.md':718 'references/operations.md':536 'references/pandas_migration.md':944 'references/transformations.md':814 'regex':1073 'region':620 'replac':43 'requir':1163,1206 'reshap':787,1147 'resourc':1099 'result':293,319,688,966 'result.collect':328 'reus':229 'review':1199 'right':751 'row':192,408,551,580,588,625,629,635,760 'rust':115 's3':659 'safeti':1209 'salari':516,604 'sale':795 'schema':778 'scope':1180 'select':186,255,324,373,374,379,385,397,690,862,968,1005,1012,1026 'semant':102 'sequenti':905 'sf':185 'signific':819 'silent':842 'singl':412 'size':1042 'skill':1101,1172 'skill-polars' 'slow':19,906 'source-sickn33' 'specif':380,1167,1194 'stack':755,759 'start':148 'statist':585 'stay':977 'still':22,70 'stop':1200 'storag':658 'str.to':465 'strategi':622 'stream':995,1002 'strict':839 'string':1039 'substitut':1190 'success':1212 'sum':517,527,554,555 'support':643,646,1140 'syntax':902 'system':1116 'tabular':95 'task':1176 'tempor':1049 'test':1196 'tip':1152 'togeth':636 'top':98 'topic':1168 'topic-agent-skills' 'topic-agentic-skills' 'topic-ai-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workflows' 'topic-antigravity' 'topic-antigravity-skills' 'topic-claude-code' 'topic-claude-code-skills' 'topic-codex-cli' 'topic-codex-skills' 'transform':80,222,246,719,811,896 'transformations.md':1142 'treat':1185 'true':1003 'type':840,843,1033,1047,1115 'union':775 'unpivot':786,800 'upper':462 'uppercas':466 'usag':152 'use':14,50,55,234,335,422,835,950,963,983,994,1030,1170 'user':749,1162 'uv':156 'valid':1195 'valu':477,480,556,571,616,794,914,921,932,937,1059,1062,1071 'vertic':758,765 'via':655,848 'vs':278,1044 'want':91 'wide':791 'window':539,572,893 'within':253,545,978 'work':120,337 'workflow':64 'write':649 'x':553,558,562,565,880,883,1079,1084,1088 'yet':318","prices":[{"id":"02190a21-b3b5-4e44-8b07-af97f94b9959","listingId":"9568efe4-17e6-4826-a1e3-0ec0b58da656","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:42:31.098Z"}],"sources":[{"listingId":"9568efe4-17e6-4826-a1e3-0ec0b58da656","source":"github","sourceId":"sickn33/antigravity-awesome-skills/polars","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/polars","isPrimary":false,"firstSeenAt":"2026-04-18T21:42:31.098Z","lastSeenAt":"2026-04-23T00:51:24.201Z"}],"details":{"listingId":"9568efe4-17e6-4826-a1e3-0ec0b58da656","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"polars","github":{"repo":"sickn33/antigravity-awesome-skills","stars":34616,"topics":["agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity","antigravity-skills","claude-code","claude-code-skills","codex-cli","codex-skills","cursor","cursor-skills","developer-tools","gemini-cli","gemini-skills","kiro","mcp","skill-library"],"license":"mit","html_url":"https://github.com/sickn33/antigravity-awesome-skills","pushed_at":"2026-04-22T06:40:00Z","description":"Installable GitHub library of 1,400+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.","skill_md_sha":"9c270a6f6bbc6a19d0b714a2788a6dfd00875703","skill_md_path":"skills/polars/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/polars"},"layout":"multi","source":"github","category":"antigravity-awesome-skills","frontmatter":{"name":"polars","license":"https://github.com/pola-rs/polars/blob/main/LICENSE","description":"Fast in-memory DataFrame library for datasets that fit in RAM. Use when pandas is too slow but data still fits in memory. Lazy evaluation, parallel execution, Apache Arrow backend. Best for 1-100GB datasets, ETL pipelines, faster pandas replacement. For larger-than-RAM data use dask or vaex."},"skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/polars"},"updatedAt":"2026-04-23T00:51:24.201Z"}}