Прежде всего, это не будет полным ответом , как
- Я не знаю, как вы представляете свой окончательный сюжет, чтобы выглядеть как
- Я не знаю, что такое столбцы в вашем DataFrame (рассмотрите возможность использования более описательных меток столбцов, например, «кавказские актеры» вместо «CAU»,…)
- мне неясно, можно ли сформировать какой-либо тренд из ваших данных, поскольку размещенный вами снимок экрана показывает равные составы аудитории для первых фильмов
Тем не менее, я построил на DataFrame в этот ответ , и, возможно, этот начальный график «не кавказского / кавказского отношения» на фильм может указать вам правильное направление.
Возможно, вы могли бы создать аналогичный набор столбцов суммы и отношения для столбцов аудитории, а затем построить график отношения акторов как функции отношения аудитории, чтобы увидеть, предпочитает ли более кавказская аудитория более или менее кавказских актеров ( Полагаю, это что вы ищете? ).
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({'ID':['Billy Elliot','next to normal','shrek','guys and dolls',
'west side story', 'pal joey'],
'Season' : [20082009,20082009,20082009,
20082009,20082009,20082009],
'AFRAM' : [2,0,4,4,0,1],
'ASIAM' : [0,0,1,0,0,0],
'CAU' : [48,10,25,24,28,20],
'LAT' : [1,0,1,3,18,0],
'OTH' : [0,0,0,0,0,0],
'WHT' : [73.7,73.7,73.7,73.7,73.7,73.7]})
## define a sum column for non caucasian actors (I suppose?)
df['non_cau']=df[['AFRAM','ASIAM','LAT','OTH']].sum(axis=1)
## build a ratio of non caucasian to caucasian
df['cau_ratio']=df['non_cau']/df['CAU']
## make a quick plot
fig,ax=plt.subplots()
ax.scatter(df['ID'],df['cau_ratio'])
ax.set_ylabel('non cau / cau ratio')
plt.tight_layout()
plt.show()