with one click
csv-processing
Use when working with CSV files
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Use when working with CSV files
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Используй, когда пользователь просит: «закрой этап», «создай отчёт этапа», «напиши отчёт», «синхронизируй report/changelog/handoff»
Используй по просьбе: «обнови документацию», «обнови документацию для <path>», «обнови MODULE_INDEX.md»
Use when working with the project wiki layer — new reports in docs/reports/ are not yet covered in wiki/index.md, a new concept needs to be saved, session needs wiki context, or pages may be stale
Use when fixing bugs or writing code in processing/, API/, statistics/, ML-infrastructure — write a failing test before fixing
Use when you have a written implementation plan to execute in a separate session with review checkpoints
Use when completing tasks, implementing major features, or before merging to verify work meets requirements
| name | csv-processing |
| description | Use when working with CSV files |
Проектные CSV — разделитель ;. Никогда не загружать целиком —
использовать nrows / chunksize / usecols для нужных колонок и строк.
import pandas as pd
df10 = pd.read_csv("MT/MQL4/Files/Nero.csv", nrows=10, sep=";")
print(df10.columns.tolist()); print(df10.dtypes)
Размер: wc -l MT/MQL4/Files/Nero.csv (bash, быстро).
df = pd.read_csv("DATA/Nero_train_labeled.csv", nrows=5000, sep=";",
usecols=["time", "signal", "ATR"])
print(df.describe(include="all")); print(df.isna().sum())
total = pos = 0
for chunk in pd.read_csv("DATA/Nero_train_labeled.csv", sep=";",
chunksize=10000, usecols=["signal"]):
total += len(chunk); pos += (chunk["signal"] > 0).sum()
print({"rows": total, "positive": int(pos)})
first = True
for chunk in pd.read_csv("DATA/Nero_train_labeled.csv", sep=";", chunksize=10000):
out = chunk[chunk["signal"] != 0]
out.to_csv("DATA/Nero_signal_only.csv", mode="w" if first else "a",
header=first, index=False, sep=";")
first = False
| Ошибка | Исправление |
|---|---|
pd.read_csv(path) без ограничений | nrows или chunksize |
print(df) на большой таблице | head, info, describe |
sep не задан → одна колонка | Явно sep=";" |