# ---
# jupyter:
#   jupytext:
#     text_representation:
#       extension: .py
#       format_name: light
#       format_version: '1.5'
#       jupytext_version: 1.14.4
#   kernelspec:
#     display_name: Python 3
#     language: python
#     name: python3
# ---

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import xlrd



path_youtube = "C:\\Users\\ro199\\Documents\\GitHub\\py-alvarado-roman-ronald-francisco\\Proyectos\\Proyecto1\\CAvideos.csv"

youtube_dataset = pd.read_csv(path_youtube)
print(youtube_dataset.shape)

Todas_columnas = youtube_dataset.columns.values
print(primera_columna)

display(youtube_dataset.head(5))

# # Primer Ejemplo
# ## Top de las 100 videos mas vistos de acuerdo con el numero de views
#

top100_videos_mas_vistos = youtube_dataset['views'].sort_values(ascending=False).head(100)
videos_mas_vistos = youtube_dataset.loc[top100_videos_mas_vistos.index,['video_id','trending_date','title','channel_title','category_id','tags','views','likes','dislikes','comment_count']]
print('TOP 100:')
display(videos_mas_vistos)

# # Segundo Ejemplo
# ## Top de las 100 videos menos vistos de acuerdo con el numero de views
#

top100_videos_menos_vistos = youtube_dataset['views'].sort_values(ascending=True).head(100)
videos_menos_vistos = youtube_dataset.loc[top100_videos_menos_vistos.index,['video_id','trending_date','title','channel_title','category_id','publish_time','tags','views']]
print('TOP 100:')
display(videos_menos_vistos)

# # Tercer Ejemplo
# ## Top de las 20 videos que no fueron muy aceptados por los usarios de youtube de acuerdo con el numero de dislikes
#



top20_videos_dislike = youtube_dataset['dislikes'].sort_values(ascending=False).head(20)
videos_mas_dislikes = youtube_dataset.loc[top20_videos_dislike.index,['trending_date','title','channel_title','publish_time','tags','dislikes']]
print('TOP 20:')
display(videos_mas_dislikes)

# # Cuarto Ejemplo
# ## Top de las 20 videos que fueron muy aceptados por los usarios de youtube de acuerdo con el numero de likes

top20_videos_like = youtube_dataset['likes'].sort_values(ascending=False).head(20)
videos_mas_likes = youtube_dataset.loc[top20_videos_like.index,['trending_date','title','channel_title','publish_time','tags','likes']]
print('TOP 20:')
display(videos_mas_likes)

# # Quinto Ejemplo
# ## Porcentajes de los videos mas vistos con sus repectivos titulos por los usuarios de youtube 

porcentaje_vistos_titulo = videos_mas_vistos['title']
print('Procentaje de videos mas vistos')
display(porcentaje_vistos_titulo.value_counts(normalize=True))

# # Sexto Ejemplo
# ## Porcentajes de los videos con mas likes por los usuarios de youtube 

porcentaje_likes_titulo = videos_mas_likes['title']
print('Procentaje de videos con mas likes')
display(porcentaje_likes_titulo.value_counts(normalize=True))

# # Septimo Ejemplo
# ## Top de las 20 videos que fueron muy comentados por los usarios de youtube de acuerdo con el numero de likes

top20_videos_comment = youtube_dataset['comment_count'].sort_values(ascending=False).head(20)
videos_mas_comentados = youtube_dataset.loc[top20_videos_comment.index,['trending_date','title','channel_title','comment_count']]
print('TOP 20:')
display(videos_mas_comentados)

# # Octavo Ejemplo
# ## Porcentajes de los videos mas comentados por los usuarios de youtube 

porcentaje_comment_title = videos_mas_comentados['title']
print('Procentaje de videos mas comentados')
display(porcentaje_comment_title.value_counts(normalize=True))

# # Noveno Ejemplo
# ## Histograma

# +
top100_videos_trending_date = youtube_dataset['category_id'].sort_values(ascending=False).head(10000)
videos_mas_trending = youtube_dataset.loc[top100_videos_trending_date.index,['category_id','title','comment_count','likes']]
print('TOP 10000:')
display(videos_mas_trending)


# -



# +

data = videos_mas_trending['category_id'].values
print(data.shape)
(n, bin_edges) = np.histogram(data, bins=50)
plt.plot(bin_edges[1:],n)
plt.show()
# -




data = videos_mas_comentados['comment_count'].values
print(data.shape)
(n, bin_edges) = np.histogram(data, bins=50)
plt.plot(bin_edges[1:],n)
plt.show()



StarcoderdataJupyterScriptsDedupFiltered