Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 返回空数据帧的合并方法_Python_Pandas_Sqlite - Fatal编程技术网

Python 返回空数据帧的合并方法

Python 返回空数据帧的合并方法,python,pandas,sqlite,Python,Pandas,Sqlite,我有两个具有以下信息的数据帧: >>> ratings.info() <class 'pandas.core.frame.DataFrame'> RangeIndex: 5 entries, 0 to 4 Data columns (total 4 columns): id 5 non-null int64 movie_id 5 non-null object rating 5 non-null object accou

我有两个具有以下信息的数据帧:

>>> ratings.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 5 entries, 0 to 4
Data columns (total 4 columns):
id            5 non-null int64
movie_id      5 non-null object
rating        5 non-null object
account_id    5 non-null int64
dtypes: int64(2), object(2)
memory usage: 240.0+ bytes

>> movies.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 296 entries, 0 to 295
Data columns (total 9 columns):
id              296 non-null int64
description     296 non-null object
genre           296 non-null object
imdb_url        296 non-null object
img_url         296 non-null object
title           296 non-null object
users_rating    296 non-null object
year            296 non-null object
movie_id        296 non-null object
dtypes: int64(1), object(8)
memory usage: 20.9+ KB

先前关于stackoverflow的回答建议检查数据类型的相似性。但是,由于我的数据类型相同,该错误的解决方案是什么?

这是使用['id','movie\u id']进行内部连接,因此如果生成的DF为空,则两个数据帧中的id和movie\u id的组合没有任何匹配。比较两个数据帧中不同的“id”和“movie_id”组合

movies.groupby(['id', 'movie_id'])['id'].count()
ratings.groupby(['id', 'movie_id'])['id'].count()

通过查看数据类型我们做不了什么,更好的办法是共享一些数据(考虑到数据不多,这对您来说应该不是问题)。如果你不想分享,你可以伪造数据来模拟你的问题。
movies.groupby(['id', 'movie_id'])['id'].count()
ratings.groupby(['id', 'movie_id'])['id'].count()