dataframe concat,merge,fillna,reset_index及excel 列传行操作

df = pd.DataFrame(list(results),columns=[‘movie_num’,‘title’,‘language’,‘area’,
‘director’,‘video_type’,‘describe’,‘duration’,‘type’,“crew_name”])

df2 = pd.DataFrame(list(results1),columns=['movie_num','high_light'])
df3 = pd.merge(df,df2,on='movie_num',how='outer')
df4 = df3.fillna("")
df5 = df4.drop('duration',axis=1)

concat 后index重复问题

df_all = df_all.reset_index(drop=True)

df_all.iloc[96,:]['title']
df_all['title'].to_list()

def combine(x):
    return x['title'] + " " + x['language']+ " " + x['area']\
            + " " + x['director']+ " " + x['crew_name']+ " " + x['describe']+" "+ x['high_light'] +" " + x['type']+ " " + x['video_type']
df_all['Combined_Data'] = df_all.apply(lambda x: combine(x),axis=1)

df1 = df.drop(['language','area', 'director','movie_type','movie_describe','duration','type'],axis=1)


index是获取索引,enumerate增加索引,sorted排序,x[1]是第二个位置,x[0]是按照第一个位置排序

ser_index = df_all[df_all.title == user_movie].index.values[0]
similar_movies = list(enumerate(cosine_sim[user_index]))
sorted_similar_movies = sorted(similar_movies,key=lambda x:x[1],reverse=True)[1:]

保存

pd.DataFrame(rec_all).to_csv('rec_results11.csv')
pd.DataFrame(rec_all).to_excel('rec_results11.xlsx')

excel 列传行操作

复制全部后,然后找个空白位置右键,选择性粘贴,选择转置选项即可

read_scv 读取第一列unnamed是不需要的,将索引复制成一列了,该怎么办呢?

stackflow上提供一个好方法,加入 index_col=0

pd.read_csv(path,index_col=0)

结果输出就没有了Unnamed

更改dataframe类自定义排序df[["","",""]]

读取字典保存出错arrays must all be same length;解决方法pd.DataFrame(sims1)改为:

pd.DataFrame.from_dict(sims1, orient='index').to_csv("521_15_30_rec.csv")

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

loong_XL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值