مصور سازی داده های متنی با ابر های کلمه ای در MATLAB
این مثال نحوه مصور سازی داده های متنی را با استفاده از ابر های کلمه ای (Word Clouds) نشان می دهد. جعبه ابزار تجزیه و تحلیل متن (Text Analytics Toolbox) ، عملکرد تابع wordcloud (MATLAB) را گسترش می دهد. این پشتیبانی برای ایجاد ابرهای کلمه ای به طور مستقیم از آرایه های رشته ای و ایجاد ابرهای کلمه از مدل های بسته ای که شامل کلمات و موضوعات LDA می باشد را اضافه می کند. برای شروع کار داده های نمونه را بارگیری کنید. فایل factoryReports.csv حاوی گزارش های کارخانه، از جمله توضیحات متنی و برچسب های دسته بندی برای هر رویداد است.
1 2 | filename = "factoryReports.csv"; tbl = readtable(filename,'TextType','string'); |
داده های متنی را از ستون توضیحات استخراج کنید.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | textData = tbl.Description; textData(1:10) ans = 10x1 string "Items are occasionally getting stuck in the scanner spools." "Loud rattling and banging sounds are coming from assembler pistons." "There are cuts to the power when starting the plant." "Fried capacitors in the assembler." "Mixer tripped the fuses." "Burst pipe in the constructing agent is spraying coolant." "A fuse is blown in the mixer." "Things continue to tumble off of the belt." "Falling items from the conveyor belt." "The scanner reel is split, it will soon begin to curve." |
از گزارش ها یک ابر کلمه ای ایجاد کنید.
1 2 3 | figure wordcloud(textData); title("Factory Reports") |
کلمات موجود در گزارش ها را با برچسب های “Leak” و “Mechanical Failure” مقایسه کنید. ابرهای کلمه ای از گزارش ها را برای هر یک از این برچسب ها ایجاد کنید. برای هر یک از کلمه های ابر کلمه رنگ ها را به ترتیب آبی و سرخابی مشخص کنید.
1 2 3 4 5 6 7 8 9 10 | figure labels = tbl.Category; subplot(1,2,1) idx = labels == "Leak"; wordcloud(textData(idx),'Color','blue'); title("Leak") subplot(1,2,2) idx = labels == "Mechanical Failure"; wordcloud(textData(idx),'Color','magenta'); title("Mechanical Failure") |
کلمات موجود در گزارش ها را با فوریت “Low”، “Medium” و “High” مقایسه کنید.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | figure urgency = tbl.Urgency; subplot(1,3,1) idx = urgency == "Low"; wordcloud(textData(idx)); title("Urgency: Low") subplot(1,3,2) idx = urgency == "Medium"; wordcloud(textData(idx)); title("Urgency: Medium") subplot(1,3,3) idx = urgency == "High"; wordcloud(textData(idx)); title("Urgency: High") |
کلمات موجود در گزارش ها را با هزینه گزارش شده صدها دلار و هزینه های گزارش شده هزار دلار مقایسه کنید. ابرهای کلمه ای از گزارش ها را برای هر یک از این مقادیر به ترتیب با رنگ هایلایت آبی و قرمز ایجاد کنید.
1 2 3 4 5 | cost = tbl.Cost; idx = cost > 100; figure wordcloud(textData(idx),'HighlightColor','blue'); title("Cost > $100") |
1 2 3 4 | idx = cost > 1000; figure wordcloud(textData(idx),'HighlightColor','red'); title("Cost > $1,000") |
نکته پایانی: این مقاله آموزشی متلب از مثال های آماده خود نرم افزار MATLAB است که اگر تولباکس تجزیه و تحلیل متن (Text Analytics Toolbox) بر روی متلب شما نصب باشد، می توانید با تایپ دستور زیر در پنجره کامند متلب به این کدها و دستورات دسترسی داشته باشید.
1 | openExample('textanalytics/VisualizeTextDataUsingWordCloudsExample') |
منبع: mathworks
هیچ نظری ثبت نشده است