cuốn sách gpt4 ai đã làm

Tách danh sách từ văn bản sang nGram trong Python

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-03 16:22:31 26 4
mua khóa gpt4 Nike

Tôi phải chia một tệp văn bản thành một số từ cụ thể cho mỗi danh sách, có lẽ được hiển thị rõ nhất trong một ví dụ.

Giả sử tệp văn bản trông như thế này

"Hôm nay tôi có một ngày tốt lành"

Tôi phải viết một hàm như dưới đây

ngrams.makeNGrams("ngrams.txt", 2)
#so vì biến đã cho ghi 2 nên kết quả đầu ra sẽ như thế này:

[['tôi', 'tôi'],['am', 'có'],['có', 'a'],['a','tốt'],['tốt', 'ngày'] ,['ngày','hôm nay']]

Nếu chức năng trông như thế này

ngrams.makeNGrams("ngrams.txt", 3)

#nó sẽ đưa ra:

[['tôi','am','có'],['có','a','tốt'],['tốt','ngày','hôm nay']]

Bây giờ có ai biết tôi nên xử lý việc này như thế nào tốt nhất không? cảm ơn bạn rất nhiều trước

câu trả lời hay nhất

我会这样做:

def ngrams(từ, n):
return zip(*(words[i:] for i in range(n)))

cách sử dụng:

>>> Words = "Hôm nay tôi có một ngày tốt lành".split()
>>> danh sách(ngrams(từ, 2))
[('tôi', 'am'), ('am', 'có'), ('có', 'a'), ('a', 'tốt'), ('tốt', 'ngày') , ('ngày', 'hôm nay')]
>>> danh sách(ngrams(từ, 3))
[('tôi', 'tôi', 'có'), ('am', 'có', 'a'), ('có', 'a', 'tốt'), ('a', 'tốt ', 'ngày'), ('tốt', 'ngày', 'hôm nay')]

Ý tưởng là tạo ra từ danh sách ban đầundanh sách, nơi danh sách thứ i di chuyểnTôi. Sau đó chỉ cần chuyển những danh sách nàyzipcùng nhau và trả về kết quả.

n=3 Trực quan hóa:

['i', 'am', 'có', 'a', 'tốt', 'ngày', 'hôm nay'] # không bị dịch chuyển
['am', 'có', 'a', 'tốt', 'ngày', 'hôm nay'] # dịch chuyển 1
['có', 'a', 'tốt', 'ngày', 'hôm nay'] # dịch chuyển 2

zip Hàm này ghép các phần tử lại với nhau ở cùng một chỉ mục cho đến khi hết danh sách ngắn nhất, tạo ra kết quả mong muốn.

Về python - Tách danh sách từ văn bản sang nGram trong Python, chúng tôi tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/38291313/

26 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress