Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.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 3.x 在数据帧python中比较具有相同列的不同行_Python 3.x_Amazon Web Services_Dataframe_Numpy - Fatal编程技术网

Python 3.x 在数据帧python中比较具有相同列的不同行

Python 3.x 在数据帧python中比较具有相同列的不同行,python-3.x,amazon-web-services,dataframe,numpy,Python 3.x,Amazon Web Services,Dataframe,Numpy,我有两个数据帧 Dataframe # 1 input : abc.json.gz cde.json.gz efg.json.gz #dataframe 1 file_val = pd.DataFrame(val, columns=['filename']) # dataframe 1 Dataframe # 2 input : ghi.json.gz abc.json.gz cde.json.gz mno.json.gz xyz.json.gz #dataframe 2 rds_rc

我有两个数据帧

Dataframe # 1 input :
abc.json.gz
cde.json.gz
efg.json.gz

#dataframe 1

file_val = pd.DataFrame(val, columns=['filename']) # dataframe 1

Dataframe # 2 input :
ghi.json.gz
abc.json.gz
cde.json.gz
mno.json.gz
xyz.json.gz

#dataframe 2

rds_rcd = pd.read_sql_query('''select filename from tablename where cast(event_date as date) = '{0}' '''.format(self.timestr), conn) 

Below code to check if there are any common records between both dataframe # 1 and daframe # 2

file_val['status'] = np.where(file_val['filename'].values != rds_rcd['filename'].values, 'False', 'True')
上述两个数据帧具有相同的列(文件名),但没有不同的记录

问题:即使“abc.json.gz”和“cde.json.gz”都存在于这两个数据帧中,也可以将所有记录的值都视为“False”

   filename    status                                            
0  abc.json.gz  False
1  cde.json.gz  False

任何建议都很好。

假设您有两个数据帧df1和df2,如:

df1:
    filename
0   abc.json.gz
1   cde.json.gz
2   efg.json.gz  

您可以通过以下方式找到通用文件名集:

common_files = set(df1['filename'].to_list()).intersection(set(df2['filename'].to_list()))  
这将产生:

{'abc.json.gz', 'cde.json.gz'}

请明确说明您在做什么工作时特别需要帮助。为了澄清,请提供一个特定的问题,包括示例输入数据、您编写的代码以及您期望作为输出的内容。请阅读Jon Skeet的优秀博客文章,以获得更新问题的指导。有关提问的更详细教程,请参阅Eric S.Raymond的网站感谢您的博客文章,希望我能以正确的方式对其进行格式化。很好,但是我的文件[u val['status']=np.where(file[u val['filename'].values!=rds_rcd['filename'].values'False',True')有什么问题。as希望将所有匹配的“status”作为单独的列显示为“True”或“False”。我不擅长np.where函数,但我会使用此函数查找任一文件中满足条件的行。因此,在您的例子中,
file\u val['filename'].values
的结果是file\u val中的一系列文件名,而
rds\u rcd['filename']的结果是rds\u rcd中的一系列文件名。然后将文件_val系列中的第一项与rcd_val系列中的第一项进行比较,如果不=将结果设置为False,否则为True。由于名称在两个系列之间不对齐,因此您的名称总是错误的。
{'abc.json.gz', 'cde.json.gz'}