از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش استخراج داده های تجزیه و تحلیل YouTube و تجزیه و تحلیل در پایتون

سرفصلهای مطلب
اگر شما یک خالق محتوای YouTube هستید ، هنگام ارسال محتوا ، تصمیمات محور داده را می گیرید. این به شما کمک می کند تا هنگام ایجاد فیلم های خود ، مخاطبان مناسب را هدف قرار دهید.
YouTube Studio Analytics YouTube را ارائه می دهد ، جایی که می توانید داده های جامع در مورد کانال خود دریافت کنید. اما یک احتیاط وجود دارد: بیشتر آمار ارائه شده توسط YouTube Analytics توصیفی است و پیش بینی کننده نیست. این بدان معناست که اطلاعاتی مانند نمایش های آینده ، تعداد مشترکین و عوامل مؤثر بر زمان ساعت یا درآمد در دسترس نیست. این بدان معنی است که شما باید خودتان این معیارها را محاسبه کنید.
در این مقاله ، شما یاد می گیرید که چگونه export داده های YouTube Analytics به Python ، بنابراین می توانید آن را بیشتر تجزیه و تحلیل کنید یا تجسم ایجاد کنید. شما حتی می توانید داشبورد سفارشی خود را با استفاده از کتابخانه های مختلف پایتون مانند Streamlit ، براق یا داش بسازید.
این چیزی است که ما
-
پیش نیازهای
-
مرحله 1: بیانیه مشکل را مشخص کنید
-
مرحله 2: داده ها را استخراج کنید
-
مرحله 3: داده ها را در پایتون تجزیه و تحلیل کنید
-
تجزیه و تحلیل همبستگی
-
تحلیل حفظ مخاطبان
-
-
پایان
پیش نیازهای
-
حساب استودیوی فعال YouTube و YouTube
-
Jupyter نوت بوک ، Google Colab ، Kaggle یا هر محیط دیگری که از پایتون پشتیبانی می کند
-
کتابخانه پانداس نصب شده است
-
کتابخانه Seaborn نصب شده است
-
کتابخانه matplotlib نصب شده است
مرحله 1: بیانیه مشکل را مشخص کنید
قبل از ادامه کار ، ما باید بدانیم که به دنبال چه چیزی هستیم – زیرا YouTube Analytics معیارهای زیادی دارد و این می تواند بسیار زیاد باشد. کانال من یک تن مشترک ندارد ، اما من چند فیلم و نمایش دارم. بنابراین ما از داده های من به عنوان نمونه استفاده خواهیم کرد.
فقط توجه داشته باشید که این تجزیه و تحلیل که من در این آموزش انجام می دهم مخصوص کانال من است و می تواند از کانال به کانال متفاوت باشد. شما می توانید از تکنیک های اینجا برای پاسخ به سؤالات مشابه/مشابه با استفاده از داده های خود استفاده کنید ، اما نتایج شما با من متفاوت خواهد بود.
در اینجا سؤالاتی وجود دارد که می خواهم پاسخی برای آن پیدا کنم:
- تجزیه و تحلیل همبستگی
-
منظره و زمان تماشا – آیا زمان تماشای طولانی تر با نماهای بالاتر همراه است؟
-
نماها و مشترکین – آیا دیدگاه های بیشتر به مشترکان بیشتر ترجمه می شود؟
-
برداشت ها و نرخ کلیک از طریق (CTR ٪)- آیا تصور قوی تر منجر به تعامل بهتر می شود؟
-
زمان تماشای و میانگین مدت زمان نمای – آیا فیلم های طولانی تر بیشتر تماشا می شوند؟
- تحلیل حفظ مخاطبان
-
مدت زمان نمای متوسط در مقابل طول فیلم – آیا فیلم های طولانی تر به طور کامل تماشا می شوند؟
-
امتیازهای افت – کدام محدوده مدت بهترین حفظ را دارد؟
-
میزان احتباس (٪) – زمان تماشای تقسیم بر مدت زمان؟
مرحله 2: داده ها را استخراج کنید
وارد حساب Studio YouTube خود شوید ، به برگه Analytics بروید و روی Advanced Mode کلیک کنید.
این یک داشبورد را باز می کند که نشان دهنده تجزیه و تحلیل های توصیفی جامع از کانال YouTube شما است. این می تواند بسیار زیاد باشد ، زیرا معیارها و فیلترهای زیادی با انواع مختلف داده وجود دارد. به همین دلیل من بر اهمیت دانستن مشکل شما و شناسایی سوالات شما قبل از غواصی تأکید کردم.
می توانید طیف وسیعی از داده های مورد علاقه خود را برای استفاده از Date Dropdown (1 در تصویر زیر) و دکمه مقایسه با (2) انتخاب کنید تا داده ها را از محدوده تاریخ مختلف مقایسه کنید.
هدرهای ستون که در داشبورد می بینید فیلترها هستند. هرکدام دارای معیارهای مختلفی هستند و می توانید برخی از معیارها را در یک یا چند فیلتر پیدا کنید. برای درک بهتر آنها می توانید با زبانه ها و کشویی ها بازی کنید.
این فقط پایه ای برای درک عملکرد کانال YouTube شما است. اگر یک کانال طولانی با تعداد زیادی از مشترکین و دیدگاه ها دارید ، به من اعتماد کنید-می توانید از داده های خود بینش زیادی کسب کنید.
برای این آموزش ، من کل داده های Lifetime (1) خود را انتخاب می کنم و روی دکمه بارگیری در گوشه سمت راست بالا (2) کلیک می کنم.
این دو گزینه را نشان می دهد: آیا داده ها را در برگه Google در یک برگه جدید باز کنید یا فایل CSV را بارگیری کنید.
از آنجا که می خواهیم از داده ها در پایتون استفاده کنیم ، گزینه بارگیری فایل CSV را انتخاب کنید. پس از بارگیری فایل ، پرونده ها را از پوشه زیپ استخراج کنید و در داخل پوشه استخراج شده ، سه پرونده CSV را مشاهده خواهید کرد: Chart data.csv
با Table data.csv
وت Totals.csv
بشر
برای این آموزش ، ما به Table data.csv
بشر برای باز کردن و مشاهده آن در اکسل ، روی داده ها کلیک کنید تا قبل از وارد کردن داده ها در پایتون ، برخی از تمیز کردن داده های دستی را انجام دهید.
داده ها لیستی از همه فیلم ها است روی کانال YouTube من ، که چهل سال است (ممکن است شما بیشتر یا کمتر باشد). ردیف اول را که است حذف کنید Total
ردیف ، و تغییرات را ذخیره کنید.
در اینجا ستون های موجود در مجموعه داده ها وجود دارد:
-
Content
: شناسه ویدیو -
Video title
: عنوان ویدیو -
Video publish time
: روزی که این فیلم منتشر شد -
Duration
: مدت زمان فیلم در چند ثانیه -
Views
: تعداد بازدید در هر ویدئو -
Watch time
: مقدار تخمینی زمان ساعت ویدیویی توسط مخاطبان شما در ساعت ها -
Subscribers
: تغییر در کل مشترکان موجود در کمبود مشترکان از دست رفته از مشترکان به دست آمده برای تاریخ و منطقه انتخاب شده. -
Average view duration
: تخمین زده می شود دقیقه به طور متوسط در هر ویدیو تماشا کنید. -
Impressions
: تعداد دفعاتی که فیلم های شما به بینندگان نشان داده شده است. -
Impressions click-through rate (%)
: تعداد دفعات بینندگان پس از دیدن تصور ، روی ویدیوی شما کلیک کردند.
مرحله 3: داده ها را در پایتون تجزیه و تحلیل کنید
به سمت خود بروید Jupyter دفترچه یادداشت و import کتابخانه های پاندا ، Seaborn و Matplotlib.
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
بعد ، import در Table data.csv
پرونده
# Load data
df = pd.read_csv("/content/Table data.csv")
تجزیه و تحلیل همبستگی
در مورد بیانیه مشکل ما ، ما قصد داریم یک نقشه گرمای همبستگی بین متغیرهای زیر ترسیم کنیم: Views
با Watch time (hours)
با Subscribers
با Average view duration
وت Impressions-click-through rate (%)
برای دیدن قدرت و جهت رابطه بین آنها.
# Convert "Average view duration" (formatted as H:M:S) to seconds
df['Average view duration'] = pd.to_timedelta(df['Average view duration']).dt.total_seconds()
# Select relevant columns for correlation analysis
correlation_data = df[['Views', 'Watch time (hours)', 'Subscribers', 'Average view duration', 'Impressions', 'Impressions click-through rate (%)']]
# Compute correlation matrix
corr_matrix = correlation_data.corr()
# Visualization using a heatmap
plt.figure(figsize=(10, 6))
sns.heatmap(corr_matrix, annot=True, cmap='coolwarm', fmt=".2f", linewidths=0.5)
plt.title("YouTube Analytics Correlation Heatmap")
plt.show()
ضریب همبستگی از -1 تا 1 متغیر است ، جایی که مقادیر کمتر از 0 به معنای رابطه منفی است ، در حالی که آنهایی که بالاتر از 0 هستند به معنای رابطه مثبت هستند. هرچه ارزش در یک رابطه منفی پایین تر باشد ، رابطه منفی قوی تر می شود ، در حالی که ارزش در یک رابطه مثبت بالاتر است ، رابطه قوی تر می شود.
مستقر روی طرح بالا ، در اینجا بینش های کلیدی وجود دارد:
-
منظره و زمان تماشا: بین نمایش ها و زمان تماشای یک همبستگی قوی (94/0) وجود دارد ، نشان می دهد که هرچه فیلم ها از دید بیشتری برخوردار می شوند ، ساعات ساعت بیشتری را نیز به طور متناسب جمع می کنند.
-
نمایش ها و برداشت ها: بین دیدگاه ها و برداشت ها یک همبستگی قوی (89/0) وجود دارد ، نشان می دهد که فیلم هایی که بیشتر در توصیه ها نشان داده می شوند و نتایج جستجو تمایل به مشاهده بیشتر دارند.
-
مدت زمان نمای متوسط: این متریک تقریباً با تمام معیارهای دیگر همبستگی بسیار ضعیفی دارد. این امر به ویژه در نماهای (0.06) ، مشترکین (0.01) و برداشت (0.03) قابل توجه است.
-
مشترکین و معیارها: مشترکین با نمای (0.75) و برداشت (79/0) و همبستگی ضعیف تری با نرخ کلیک (0.54) همبستگی متوسط و قوی دارند.
-
از طریق نرخ کلیک کنید: دارای همبستگی متوسط با نمایش (0.69) و زمان ساعت (0.66) اما همبستگی ضعیف تری با مشترکان (0.54) دارد.
مهمترین بینش این است که به نظر می رسد مدت زمان متوسط به طور مستقل از سایر معیارها کار می کند. این نشان می دهد که روی کانال YouTube من ، توانایی یک ویدیو برای حفظ بینندگان در طول طول آن لزوماً به تعداد افراد تماشای آن ، چند بار توصیه می شود ، یا چه تعداد مشترکین کانال دارند.
این بدان معنی است که استراتژی هایی که من برای افزایش دیدگاه ها ، مشترکین و برداشت های خود اجرا می کنم ممکن است با مواردی که برای بهبود مدت زمان مشاهده ، متفاوت است ، یک عامل مهم در الگوریتم توصیه YouTube باشد. این بدان معناست که من باید به سایر معیارهای YouTube که با مدت زمان مشاهده متوسط رابطه دارند ، نگاه کنم که این موضوعی برای مقاله دیگری است.
تحلیل حفظ مخاطبان
برای تجزیه و تحلیل حفظ مخاطبان ، ما باید یک متغیر جدید ایجاد کنیم Retention Rate (%)
، که با تقسیم یک فیلم محاسبه می شود Average view duration
توسط Duration
و بیان آن به عنوان یک درصد.
# Calculate retention rate as (Average View Duration / Total Video Duration) * 100
df['Retention Rate (%)'] = (df['Average view duration'] / df['Duration']) * 100
بعدی این است که فیلم ها را به صورت صعودی مبتنی بر مرتب کنید روی Retention Rate (%)
و 10 فیلم برتر را با بالاترین نرخ نگهداری نمایش دهید.
# Sort videos by retention rate
df_sorted = df.sort_values(by='Retention Rate (%)', ascending=False)
# Display top 10 videos with highest retention
df_sorted[['Video title', 'Duration', 'Average view duration', 'Retention Rate (%)']].head(10)
از جدول بالا متوجه خواهید شد که بیشتر فیلم ها در 10 نقطه برتر بالاتر از 503 ثانیه نیستند که تقریباً 8 دقیقه است. این بدان معنی است که مخاطبان من به فیلم های کوتاه و میان رده علاقه دارند.
بیشتر فیلم ها با میزان احتباس بالا مدت کمتر از 4 دقیقه دارند و نرخ احتباس آن از 27 ٪ – 40 ٪ است. با این بینش ، می توانم اطمینان حاصل کنم که فیلم های بعدی که بارگذاری می کنم طی 5 تا 8 دقیقه است.
بیایید نگاهی به 10 فیلم پایین با نرخ نگهداری پایین بیندازیم:
# Sort videos by retention rate
df_sorted = df.sort_values(by='Retention Rate (%)', ascending=False)
# Display bottom 10 videos with highest retention
df_sorted[['Video title', 'Duration', 'Average view duration', 'Retention Rate (%)']].tail(10)
از اطلاعات فوق ، متوجه خواهید شد که فیلم های طولانی در کانال من که تقریباً 22 – 58 دقیقه در آن قرار دارند ، میزان احتباس کم دارند. این بیشتر از ادعای فوق حمایت می کند که مخاطبان من بیشتر به فیلم های کوتاه تر علاقه مند هستند.
ما بیشتر می توانیم تصمیم بگیریم که یک طرح پراکنده را ترسیم کنیم Duration
در مقابل Retention Rate (%)
برای خلاصه کردن جداول فوق.
# Set style for plots
sns.set_style("whitegrid")
# Plot Retention Rate vs. Video Duration
plt.figure(figsize=(12, 6))
sns.scatterplot(data=df, x='Duration', y='Retention Rate (%)', hue='Views', size='Views', sizes=(20, 200), palette='coolwarm')
plt.title("Audience Retention vs. Video Duration")
plt.xlabel("Video Duration (seconds)")
plt.ylabel("Retention Rate (%)")
plt.legend(title="Views", loc="upper right")
plt.show()
طرح پراکندگی بالا رابطه بین میزان احتباس مخاطبان (محور y ، اندازه گیری به عنوان درصد) و مدت زمان فیلم (محور x ، که در ثانیه اندازه گیری می شود) را برای فیلم های مختلف نشان می دهد. در اینجا مشاهدات کلیدی زیر آورده شده است:
-
بین مدت زمان فیلم و میزان احتباس همبستگی منفی روشنی وجود دارد – از آنجا که فیلم ها طولانی تر می شوند ، میزان احتباس به طور کلی کاهش می یابد.
-
بالاترین نرخ احتباس (35-40 ٪) در فیلم های کوتاه تر ، عمدتا زیر 500 ثانیه (حدود 8 دقیقه) یافت می شود.
-
فیلم های بیش از 1500 ثانیه (25 دقیقه) به طور مداوم نرخ نگهداری زیر 15 ٪ را نشان می دهد.
-
اندازه و رنگ نقاط نشان دهنده تعداد نماها است ، با نقاط بزرگتر و قرمزتر که نشانگر نماهای بیشتر (حداکثر 1000) و نقاط آبی کوچکتر است که نمای کمتری را نشان می دهد (حدود 200).
-
جالب اینجاست که برخی از فیلم های میانی (حدود 500 ثانیه) هر دو تعداد نمای بالاتر (نشان داده شده توسط نقاط قرمز بزرگتر) و نرخ نگهداری مناسب در حدود 25 ٪ دارند.
-
طولانی ترین فیلم در مجموعه داده (در حدود 3500 ثانیه یا 58 دقیقه) میزان احتباس حدود 14 ٪ و دید نسبتاً کمی دارد.
این طرح بیشتر این ادعا را تأیید می کند که فیلم های کوتاه تر تمایل دارند توجه مخاطبان را بهتر حفظ کنند روی کانال من ، گرچه برخی از فیلم های میان مدت هنوز هم می توانند از نظر حفظ و تعداد مشاهده عملکرد خوبی داشته باشند.
پایان
آنچه ما از داده های من آموخته ایم فقط نوک کوه یخ است. YouTube معیارهای زیادی دارد ، و از آنجا روی کسب درآمد ، جمعیت شناسی و سایر معیارها.
اما پس از خواندن این مقاله ، امیدوارم که بتوانید به اطلاعات بی پایان که می خواهید برپا کنید فکر کنید روی این معیارها شما حتی می توانید نظرات ، تعداد مشترکین و درآمد خود را برای روزها یا ماه های بعدی پیش بینی کنید. همچنین می توانید یک تحلیل سری زمانی چند متغیره را انجام دهید تا ببینید که چگونه این عوامل بر متغیر اصلی علاقه شما تأثیر می گذارد.
اگر این مقاله را جالب دیدید ، فراموش نکنید که وبلاگ من را برای سایر مقالات جالب دیگر بررسی کنید ، مرا دنبال کنید روی متوسط ، اتصال روی LinkedIn ، و در کانال YouTube من مشترک شوید.
منتشر شده در 1404-03-26 23:55:13