Hướng dẫn how to count the amount of times a word appears in python - cách đếm số lần một từ xuất hiện trong python

Giới thiệu

Đếm tần số từ trong phần tử danh sách trong Python là một nhiệm vụ tương đối phổ biến - đặc biệt là khi tạo dữ liệu phân phối cho biểu đồ.histograms.

Show

Giả sử chúng tôi có một danh sách

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
5 - chúng tôi có hai lần xuất hiện trên "B" và một trong "A". Hướng dẫn này sẽ chỉ cho bạn ba cách khác nhau để đếm số lần xuất hiện từ trong danh sách Python:

  • Sử dụng gấu trúc và numpy
  • Sử dụng chức năng
    hello      3
    goodbye    1
    bye        1
    howdy      1
    hi         1
    dtype: int64
    
    6
  • Sử dụng mô -đun bộ sưu tập
    hello      3
    goodbye    1
    bye        1
    howdy      1
    hi         1
    dtype: int64
    
    7
  • Sử dụng một vòng lặp và một biến bộ đếm

Trong thực tế, bạn sẽ sử dụng gấu trúc/nunpy, hàm

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 hoặc
hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
7 vì chúng khá thuận tiện để sử dụng.

Sử dụng gấu trúc và numpy

Sử dụng chức năng

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6

import numpy as np
import pandas as pd

words = ['hello', 'goodbye', 'howdy', 'hello', 'hello', 'hi', 'bye']

pd.value_counts(np.array(words))

Sử dụng mô -đun bộ sưu tập

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
7

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64

Sử dụng một vòng lặp và một biến bộ đếm

df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)

Trong thực tế, bạn sẽ sử dụng gấu trúc/nunpy, hàm

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 hoặc
hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
7 vì chúng khá thuận tiện để sử dụng.

Index: Index(['hello', 'goodbye', 'bye', 'howdy', 'hi'], dtype='object')

Values: [3 1 1 1 1]

Cách ngắn nhất và dễ nhất để có được số lượng giá trị ở định dạng dễ điều khiển (df = pd.value_counts(np.array(words)) print('Index:', df.index) print('Values:', df.values) 0) là thông qua Numpy và Pandas. Chúng ta có thể gói danh sách thành một mảng numpy, sau đó gọi phương thức df = pd.value_counts(np.array(words)) print('Index:', df.index) print('Values:', df.values) 1 của thể hiện df = pd.value_counts(np.array(words)) print('Index:', df.index) print('Values:', df.values) 2 (cũng có sẵn cho tất cả các trường hợp df = pd.value_counts(np.array(words)) print('Index:', df.index) print('Values:', df.values) 0):

Điều này dẫn đến một

df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)
0 có chứa:

Bạn có thể truy cập trường

df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)
5 của nó để tự mình có được số lượng hoặc
df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)
6 để tự nhận các từ:

Kết quả này trong:O(n), where

Index: Index(['hello', 'goodbye', 'bye', 'howdy', 'hi'], dtype='object')

Values: [3 1 1 1 1]
0 is the number of factors present in the list.

Sử dụng hàm đếm ()

words = ['hello', 'goodbye', 'howdy', 'hello', 'hello', 'hi', 'bye']

print(f'"hello" appears {words.count("hello")} time(s)')
print(f'"howdy" appears {words.count("howdy")} time(s)')

Cách "tiêu chuẩn" (không có thư viện bên ngoài) để có được số lượng từ xuất hiện trong danh sách là bằng cách sử dụng hàm

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 của đối tượng danh sách.

"hello" appears 3 time(s)
"howdy" appears 1 time(s)

Phương thức

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 là một hàm tích hợp lấy một phần tử làm đối số duy nhất của nó và trả về số lần phần tử xuất hiện trong danh sách.

Độ phức tạp của hàm hello 3 goodbye 1 bye 1 howdy 1 hi 1 dtype: int64 6 là O (n), trong đó Index: Index(['hello', 'goodbye', 'bye', 'howdy', 'hi'], dtype='object') Values: [3 1 1 1 1] 0 là số lượng các yếu tố có trong danh sách.

Mã bên dưới sử dụng

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 để có được số lần xuất hiện cho một từ trong danh sách:

Điều này sẽ cung cấp cho chúng ta đầu ra giống như trước khi sử dụng các vòng lặp:

from collections import Counter

words = ['hello', 'goodbye', 'howdy', 'hello', 'hello', 'hi', 'bye']

word_counts = Counter(words)

print(f'"hello" appears {word_counts["hello"]} time(s)')
print(f'"howdy" appears {word_counts["howdy"]} time(s)')

Phương pháp

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 cung cấp cho chúng ta một cách dễ dàng để có được số lượng từ xuất hiện trong danh sách cho từng từ riêng lẻ.

"hello" appears 3 time(s)
"howdy" appears 1 time(s)

Sử dụng một vòng lặp và một biến bộ đếm

Trong thực tế, bạn sẽ sử dụng gấu trúc/nunpy, hàm

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 hoặc
hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
7 vì chúng khá thuận tiện để sử dụng.

Cách ngắn nhất và dễ nhất để có được số lượng giá trị ở định dạng dễ điều khiển (

df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)
0) là thông qua Numpy và Pandas. Chúng ta có thể gói danh sách thành một mảng numpy, sau đó gọi phương thức
df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)
1 của thể hiện
df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)
2 (cũng có sẵn cho tất cả các trường hợp
df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)
0):

Điều này dẫn đến một

df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)
0 có chứa:

Bạn có thể truy cập trường

df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)
5 của nó để tự mình có được số lượng hoặc
df = pd.value_counts(np.array(words))

print('Index:', df.index)
print('Values:', df.values)
6 để tự nhận các từ:

def count_occurrence(words, word_to_count):
    count = 0
    for word in words:
        if word == word_to_count:
          # update counter variable
            count = count + 1
    return count


words = ['hello', 'goodbye', 'howdy', 'hello', 'hello', 'hi', 'bye']
print(f'"hello" appears {count_occurrence(words, "hello")} time(s)')
print(f'"howdy" appears {count_occurrence(words, "howdy")} time(s)')

Kết quả này trong:

"hello" appears 3 time(s)
"howdy" appears 1 time(s)

Sử dụng hàm đếm ()

Cách "tiêu chuẩn" (không có thư viện bên ngoài) để có được số lượng từ xuất hiện trong danh sách là bằng cách sử dụng hàm hello 3 goodbye 1 bye 1 howdy 1 hi 1 dtype: int64 6 của đối tượng danh sách.

Phương thức

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 là một hàm tích hợp lấy một phần tử làm đối số duy nhất của nó và trả về số lần phần tử xuất hiện trong danh sách.

Độ phức tạp của hàm

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 là O (n), trong đó
Index: Index(['hello', 'goodbye', 'bye', 'howdy', 'hi'], dtype='object')

Values: [3 1 1 1 1]
0 là số lượng các yếu tố có trong danh sách.

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
0

Mã bên dưới sử dụng

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 để có được số lần xuất hiện cho một từ trong danh sách:

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
1

Điều này sẽ cung cấp cho chúng ta đầu ra giống như trước khi sử dụng các vòng lặp:

Phương pháp

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 cung cấp cho chúng ta một cách dễ dàng để có được số lượng từ xuất hiện trong danh sách cho từng từ riêng lẻ.

Sử dụng bộ đếm của mô -đun bộ sưu tập

Thể hiện lớp

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
7 có thể được sử dụng, tốt, đếm các trường hợp của các đối tượng khác. Bằng cách chuyển một danh sách vào hàm tạo của nó, chúng tôi khởi tạo một
hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
7 trả về một từ điển của tất cả các yếu tố và sự xuất hiện của chúng trong một danh sách.

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
2

Từ đó, để có được một từ xuất hiện, bạn chỉ có thể sử dụng từ làm khóa cho từ điển:

Điều này resuts trong:

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
3

Mã bên dưới sử dụng

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
6 để có được số lần xuất hiện cho một từ trong danh sách:

hello      3
goodbye    1
bye        1
howdy      1
hi         1
dtype: int64
4

Điều này sẽ cung cấp cho chúng ta đầu ra giống như trước khi sử dụng các vòng lặp:

Phương pháp hello 3 goodbye 1 bye 1 howdy 1 hi 1 dtype: int64 6 cung cấp cho chúng ta một cách dễ dàng để có được số lượng từ xuất hiện trong danh sách cho từng từ riêng lẻ.

Sử dụng bộ đếm của mô -đun bộ sưu tập