راه
۶ کیو· متوسطمتوسطPYTHON۴ ثانیه · ۲۵۶ مگابایت

کیسه‌ی واژه با دست

CountVectorizer در scikit-learn با تنظیم‌های پیش‌فرضش این کارها را می‌کند:

  1. هر سند را به حروف کوچک تبدیل می‌کند؛
  2. توکن‌ها را با عبارت منظم r"(?u)\b\w\w+\b" پیدا می‌کند — هر دنباله‌ی دو یا چند حرف و رقم؛ کلمه‌های یک‌حرفی و علامت‌ها کنار گذاشته می‌شوند؛
  3. واژه‌نامه را از همه‌ی توکن‌های متمایز همه‌ی سندها می‌سازد، به ترتیب الفبایی؛
  4. برای هر سند، تعداد تکرار هر واژه‌ی واژه‌نامه را می‌شمارد.

تابع bag_of_words(docs) با docs فهرستی از رشته‌ها، دو چیز برمی‌گرداند: واژه‌نامه (فهرست رشته‌ها) و ماتریس شمارش (یک فهرست برای هر سند، به ترتیب واژه‌نامه). همان vectorizer.get_feature_names_out() و vectorizer.fit_transform(docs).toarray() — ولی بی scikit-learn.

نمونه‌ها

ورودی نمونه ۱
[["The cat sat on the mat.", "The dog sat on the log!", "A cat and a dog."]]
خروجی نمونه ۱
[["and", "cat", "dog", "log", "mat", "on", "sat", "the"], [[0, 1, 0, 0, 1, 1, 1, 2], [0, 0, 1, 1, 0, 1, 1, 2], [1, 1, 1, 0, 0, 0, 0, 0]]]

برای نوشتن پاسخ و دریافت امتیاز، ابتدا وارد حساب شوید.

ورود