Hướng dẫn cleaning twitter data in python - làm sạch dữ liệu twitter trong python

Ảnh của Moran trên unsplash

Twitter là một trong những nguồn dữ liệu được sử dụng nhiều nhất để phân tích dữ liệu. Lý do là nó mở và miễn phí để thu thập trừ khi bạn đăng ký phiên bản trả phí một. Bên cạnh đó, nó khá đơn giản để thu thập dữ liệu từ nó. Nếu bạn đã biết cách thu thập dữ liệu Twitter bằng Python, bạn có thể kiểm tra bài viết trước của tôi, Teehee. is one of the most used data sources for data analysis. The reason is that it’s open and free to collect unless you subscribe to the paid version one. Besides, it’s pretty simple to collect data from it. If you haven’t known how to collect Twitter data using python, you can check my previous post, teehee.

Dữ liệu Twitter chứa một loạt các tham số thông tin. Đôi khi, dữ liệu chứa những thứ không cần thiết cần được làm sạch, chẳng hạn như các ký tự không cần thiết, liên kết, dòng mới và các loại công cụ khác. Trong bài viết này, tôi sẽ chỉ cho bạn cách làm sạch dữ liệu Twitter bằng ngôn ngữ lập trình Python.

Thứ nhất, bạn cần nhập các mô -đun cần thiết. Chúng tôi sẽ sử dụng 4 mô -đun ở đây:

  1. Pandas, để mở các tệp dữ liệu và áp dụng một số hoạt động nhất định vào dữ liệu.
  2. HTML, để giải mã các thực thể HTML thành các ký tự thông thường.
  3. Re, để lọc và xóa các liên kết không cần thiết, băm, tên người dùng, dấu câu hoặc bất cứ điều gì bạn muốn.
  4. NLTK, để làm sạch từ dừng.
import pandas as pdimport htmlimport refrom nltk.corpus import stopwordsfrom nltk.tokenize import word_tokenize

Thứ hai, chúng ta cần nhập dữ liệu Twitter. Trong trường hợp này, tôi sử dụng dữ liệu Twitter CSV, bạn có thể điều chỉnh mã nếu bạn sử dụng một loại tệp mở rộng khác. Chúng tôi tận dụng lợi thế của thư viện Pandas ở đây để nhập dữ liệu.

pd.set_option(‘display.max_colwidth’, None)data = pd.read_csv(‘your_sample.csv’)data.head()

Khi chúng tôi đã nhập dữ liệu, giờ đây chúng tôi đã sẵn sàng cho quy trình làm sạch dữ liệu. Những điều đầu tiên mà chúng tôi sẽ làm sạch là các bản sao dữ liệu. Hầu hết thời gian, chúng tôi không cần phải sao chép dữ liệu, bởi vì trong việc sử dụng thêm (tức là phân tích), các bản sao dữ liệu này có thể làm rối kết quả bằng cách làm rối tung phép đo.

new_data = data.drop_duplicates(‘Tweet Content’,keep=’first’) #delete the duplicates by dropping them and store the result value to a new variablenew_data.head()

Nếu DataFrame của bạn có các chỉ số bao gồm trên đó, một khi bạn bỏ các bản sao dữ liệu đó, bạn cần lưu trữ DataFrame mới trong một tệp mới. Don Tiết quên lưu trữ dữ liệu mới vào một tệp mới mà không bao gồm chỉ mục trên đó, để chúng tôi có thể khám phá dữ liệu một cách tự do hơn sau này.

Chúng tôi ở đây giả định rằng chúng tôi chỉ sử dụng dữ liệu tweet, vì vậy chúng tôi sẽ trích xuất dữ liệu tweet ra khỏi tệp.

new_data.to_csv(r’your_new_sample.csv’, index = False)new_sample = pd.read_csv(‘your_new_sample.csv’)new_sample.head()tweets = new_sample[‘Tweet Content’]tweets.head()

Khi chúng tôi trích xuất dữ liệu tweet, chúng tôi sẽ nhận thấy những thứ cần được làm sạch. Hầu hết thời gian, các tweet được trả về bởi dữ liệu JSON Twitter chứa các thực thể HTML và chúng cần được giải mã thành các ký tự. Vì vậy, chúng tôi đã làm sạch chúng bằng thư viện HTML. Ngoài ra, chúng ta cũng cần dọn dẹp Newlines vì ​​chúng làm cho dữ liệu trở nên lộn xộn.

for i in range (len(tweets)):x = tweets[i].replace(“\n”,” “) #cleaning newline “\n” from the tweetstweets[i] = html.unescape(x)tweets.head()

Đôi khi khi tweet, người dùng Twitter đính kèm phương tiện như hình ảnh, video, v.v ... Những phương tiện đó sẽ được chuyển đổi thành các liên kết trên dữ liệu JSON. Vì chúng tôi chỉ sử dụng dữ liệu văn bản, đó là các tweet, vì vậy chúng tôi cần làm sạch các liên kết. Ngoài ra, chúng tôi sẽ dọn dẹp các ký tự băm (chỉ các ký tự băm không phải là toàn bộ hashtag) và tên người dùng. Tất cả những thứ đó sẽ được làm sạch bằng thư viện Regex Python.

for i in range (len(tweets)):tweets[i] = re.sub(r”(@[A-Za-z0–9_]+)|[^\w\s]|#|http\S+”, “”, tweets[i])tweets.head()

Cho đến bây giờ, chúng tôi đã có nhiều dữ liệu sạch hơn, nhưng có một điều nữa mà chúng tôi cần làm để làm cho nó thậm chí còn sạch hơn. Trong dữ liệu văn bản, chủ yếu là nó chứa các từ không đáng kể không được sử dụng cho quá trình phân tích vì chúng có thể làm rối tung điểm phân tích. Vì vậy, chúng tôi sắp làm sạch chúng bây giờ bằng thư viện NLTK Python. Có một số bước bạn cần làm để xóa các từ dừng lại:

- Chuẩn bị từ dừng

tweets_to_token = tweetssw = stopwords.words(‘english’) #you can adjust the language as you desiresw.remove(‘not’) #we exclude not from the stopwords corpus since removing not from the text will change the context of the text

- tokenize các tweet

for i in range(len(tweets_to_token)):tweets_to_token[i] = word_tokenize(tweets_to_token[i])

- Xóa các từ dừng lại

for i in range(len(tweets_to_token)):tweets_to_token[i] = [word for word in tweets_to_token[i] if not word in sw]tweets_to_token

Vì vậy, đó là khá nhiều về cách làm sạch dữ liệu Twitter của bạn. Tôi hy vọng nó hữu ích cho bạn. Cảm ơn các bạn đã đọc. Tạm biệt bây giờ và đừng quên luôn luôn để mắt đến sức khỏe của bạn. 👋🏻😉

Làm cách nào để xóa dữ liệu Twitter của tôi?

Cách xóa bộ đệm Twitter của bạn trên thiết bị di động..
Nhấn vào biểu tượng hồ sơ của bạn. Stephanie Lin/Business Insider ..
Nhấn vào "Cài đặt và quyền riêng tư." Stephanie Lin/Business Insider ..
Chọn "Sử dụng dữ liệu." Stephanie Lin/Business Insider ..
Nhấn vào "Lưu trữ phương tiện" hoặc "Lưu trữ web." ....
Nhấn để xóa lưu trữ của bạn trên Twitter ..

Làm thế nào để bạn làm sạch dữ liệu trong Python?

Nhập thư viện ..
Đầu vào Bộ dữ liệu phản hồi của khách hàng ..
Xác định vị trí dữ liệu bị thiếu ..
Kiểm tra các bản sao ..
Phát hiện các ngoại lệ ..
Bình thường hóa vỏ ..

Làm cách nào để lấy dữ liệu từ Twitter bằng Python?

2.1 Cài đặt Tweepy.Nếu bạn không có thư viện Tweepy, bạn có thể cài đặt nó bằng lệnh: ....
2.2 Xác thực với thông tin đăng nhập của bạn.Mở môi trường Python ưa thích của bạn (ví dụ: ... ...
2.3 Thiết lập truy vấn tìm kiếm của bạn.....
2.4 Thu thập các tweet.....
2.5 Tạo một bộ dữ liệu ..

Làm cách nào để lấy dữ liệu Twitter và phân tích nó bằng Python?

Chúng tôi làm theo 3 bước chính này trong chương trình của chúng tôi:..
Ủy quyền cho khách hàng API Twitter ..
Nhận yêu cầu nhận API Twitter để tìm nạp các tweet cho một truy vấn cụ thể ..
Phân tích các tweet.Phân loại từng tweet là tích cực, tiêu cực hoặc trung tính ..