Это работает?
ll = [['Johnny Depp', 'a|b|c', 'Movie_1'],['Johnny Depp', 'a|d', 'Movie_2'],['Marlon Brando', 'f', 'Movie_3']]
movies = pd.DataFrame(ll,columns=['actors','genres','titles'])
print(movies)
# Get it as matrix of 0,1.
genre_df = movies.genres.str.get_dummies()
print(genre_df)
# Bonus: get a column containing list of first 2 genres.
genre_df['first_genre'] = pd.Series([''.join(genre_df.iloc[i,:][genre_df.iloc[i,:] == 1][0:1].index.tolist()) for i in range(len(genre_df))])
genre_df['second_genre'] = pd.Series([''.join(genre_df.iloc[i,:][genre_df.iloc[i,:] == 1][1:2].index.tolist()) for i in range(len(genre_df))])
genre_df['actors'] = movies['actors']
genre_df['titles'] = movies['titles']
print(genre_df)
# Get Depp movie info only.
depp_df = genre_df[genre_df['actors'] == 'Johnny Depp'][['first_genre', 'second_genre', 'titles']]
print(depp_df)
Надеюсь, это в нужном вам формате, я не совсем понял.