هل ترى أي أخطاء؟

#الآن، لنستخدم وظائف ميلاني والش لتنظيف مجموعة بيانات تويتر هذه

my\_tweets\_df = pd.read\_csv('my\_tweets.csv', parse\_dates = ['تم الإنشاء\_at'])
# حدد أعمدة الاهتمام
my\_clean\_tweets\_df = my\_tweets\_df[['created\_at', 'author.username', 'author.name', 'author.description',
 "author.verified"، "نص"، "public\_metrics.retweet\_count"،
 'public\_metrics.like\_count'، 'public\_metrics.reply\_count'، 'public\_metrics.quote\_count'،
 'lang'، 'source'، 'geo.full\_name']]

# إعادة تسمية الأعمدة للراحة
my\_clean\_tweets\_df = my\_clean\_tweets\_df.rename(columns={'created\_at': 'date', 'public\_metrics.retweet\_count': 'إعادات التغريد'،
 'author.username': 'اسم المستخدم'، 'author.name': 'اسم'، 'author.verified': 'تم التحقق منه'،
 'public\_metrics.like\_count': 'الإعجابات', 'public\_metrics.quote\_count': 'اقتباسات',
 'public\_metrics.reply\_count': 'الردود'، 'author.description': 'user\_bio'})

#لنرى كيف تبدو مجموعة البيانات الآن.

my\_clean\_tweets\_df.head()

#تبدو جيدا!

#لنحفظها كورقة إكسل ليسهل استرجاعها لاحقًا

my\_clean\_tweets\_df.to\_csv("clean-tweets.csv"، Index=False)
# الآن دعونا نقرأ هذا مرة أخرى في إطار بيانات جديد

clean\_tweets\_df = pd.read\_csv('clean-tweets.csv')
نظيف\_تغريدات\_df.head()

#يبدو هذا جيدًا ولكننا نريد إجراء المزيد من التنظيف عليه لأنه لا يزال يحتوي على رموز تعبيرية وروابط وما إلى ذلك.

#دعونا نستخدم بعض الوظائف من هنا: https://towardsdatascience.com/twitter-topic-modeling-e0e3315b12e2

تحديد إعطاء\_emoji\_free\_text(text):
 """
 إزالة الرموز التعبيرية من التغريدات
 يقبل:
 نص (تغريدات)
 عائدات:
 نص (تغريدات خالية من الرموز التعبيرية)
 """
 emoji\_list = [c لـ c في النص إذا c في emoji.EMOJI\_DATA]
 clean\_text = ' '.join([str for str in text.split() إذا لم يكن أي(i in str for i in emoji\_list)])
 إرجاع النص النظيف\_

حدد عنوان url\_free\_text(نص):
 '''
 ينظف النص من عناوين URL
 '''
 text = re.sub(r'http\S+', '', نص)
 عودة النص

# يتيح تطبيق هذه الوظائف لتنظيف بياناتنا بشكل أكبر

# قم بتطبيق الوظيفة أعلاه واحصل على تغريدات خالية من الرموز التعبيرية
اتصل\_emoji\_free = لامدا x: أعط\_emoji\_free\_text(x)
# تطبيق `call\_emoji\_free` الذي يستدعي الوظيفة لإزالة جميع الرموز التعبيرية
clean\_tweets\_df['emoji\_free\_tweets'] = clean\_tweets\_df['text'].apply(call\_emoji\_free)

# أنشئ عمودًا جديدًا يحتوي على تغريدات خالية من عناوين URL
clean\_tweets\_df['url\_free\_tweets'] = نظيف\_tweets\_df['emoji\_free\_tweets'].apply(url\_free\_text)

# الآن بعد أن أصبحت بياناتنا نظيفة، فلنعالجها لإزالة كلمات التوقف، ثم نقوم بترميزها وإضفاء الطابع الرسمي عليها

# رمز مميز
رمز مميز = رمز مميز (nlp.vocab)
# كلمات التوقف المخصصة
custom\_stopwords = ['hi','\n','\n\n', '&', ' ', '.', '-', 'got', "it's"، 'it's'، "i "م"، "أنا"، "أنا"، "أريد"، "أعجبني"، "$"، "@"]

# تخصيص كلمات التوقف عن طريق إضافتها إلى القائمة الافتراضية
STOP\_WORDS = nlp.Defaults.stop\_words.union(custom\_stopwords)

# ALL\_STOP\_WORDS = سباسي + جينسيم + وردكلود
ALL\_STOP\_WORDS = STOP\_WORDS.union(SW).union(stopwords)
الرموز = []

للمستند في tokenizer.pipe(clean\_tweets\_df['url\_free\_tweets'], Batch\_size=500):
 الوثيقة\_الرموز = []
 للرمز المميز في المستند:
 إذا لم يكن token.text.lower() في STOP\_WORDS:
 doc\_tokens.append(token.text.lower())
 الرموز المميزة.append(doc\_tokens)

# إنشاء عمود الرموز المميزة
clean\_tweets\_df['tokens'] = tokens

#دعونا نرى كيف يبدو
نظيف\_تغريدات\_df.head()

# فلنحفظ التقدم الذي أحرزناه لاستلامه لاحقًا
clean\_tweets\_df.to\_csv("lemmatized\_tweets.csv"،index=False)
{"source": "ewof/sharegpt-instruct-unfiltered-deduped", "kind": "human", "evolved_from": null}