Skip to main content

How to match more than 2 number in a row?

I have 2 data frames that I would like to match more than 2 numbers that match in the row I'm looking up.

import pandas as pd 

cols = ['Num1','Num2','Num3','Num4','Num5','Num6']
df1 = pd.DataFrame([[2,4,6,8,9,10]], columns=cols)

df2 = pd.DataFrame([[1,1,2,4,5,6,8],
               [2,5,6,20,22,23,34],
               [3,8,12,13,34,45,46],
               [4,9,10,14,29,32,33],
               [5,1,22,13,23,33,35],
               [6,1,6,7,8,9,10],
               [7,0,2,3,5,6,8]], 
               columns = ['Id','Num1','Num2','Num3','Num4','Num5','Num6'])

I have this code that matches but i would like to enhance by matching more than 2 numbers in the row.

 # convert the values in the first dataframe to a list
   vals_to_find = df1.iloc[0].tolist()

 # Print the values to find
   print("Vals to find:", vals_to_find)

 # Create an empty list to hold the matching IDs
   matching_ids = []

# iterate through the big dataframe 
  for index, row in df2.iterrows():

  rowlist = row.tolist()       # convert the row to a list

# keep the id for later, and extract the other values for evaluation
  id = rowlist[0]
  vals = rowlist[1:]

# count the number of values in one list against another list
counter = sum(elem in vals_to_find for elem in vals)

# If the number of matches is greater than 2, then grab the ID
if counter > 2:
    matching_ids.append({'ID': id})

# Print the matching IDs 
  print('Matching IDS:', matching_ids)

I would like my results to be something like that..

df3 = pd.DataFrame([[6,1,6,7,8,9,10],
               [7,0,2,3,5,6,8]], 
               columns = ['Id', 'Num1','Num2','Num3','Num4','Num5','Num6'])  


source https://stackoverflow.com/questions/74867149/how-to-match-more-than-2-number-in-a-row

Comments

Popular posts from this blog

Prop `className` did not match in next js app

I have written a sample code ( Github Link here ). this is a simple next js app, but giving me error when I refresh the page. This seems to be the common problem and I tried the fix provided in the internet but does not seem to fix my issue. The error is Warning: Prop className did not match. Server: "MuiBox-root MuiBox-root-1" Client: "MuiBox-root MuiBox-root-2". Did changes for _document.js, modified _app.js as mentioned in official website and solutions in stackoverflow. but nothing seems to work. Could someone take a look and help me whats wrong with the code? Via Active questions tagged javascript - Stack Overflow https://ift.tt/2FdjaAW

How to show number of registered users in Laravel based on usertype?

i'm trying to display data from the database in the admin dashboard i used this: <?php use Illuminate\Support\Facades\DB; $users = DB::table('users')->count(); echo $users; ?> and i have successfully get the correct data from the database but what if i want to display a specific data for example in this user table there is "usertype" that specify if the user is normal user or admin i want to user the same code above but to display a specific usertype i tried this: <?php use Illuminate\Support\Facades\DB; $users = DB::table('users')->count()->WHERE usertype =admin; echo $users; ?> but it didn't work, what am i doing wrong? source https://stackoverflow.com/questions/68199726/how-to-show-number-of-registered-users-in-laravel-based-on-usertype

Why is my reports service not connecting?

I am trying to pull some data from a Postgres database using Node.js and node-postures but I can't figure out why my service isn't connecting. my routes/index.js file: const express = require('express'); const router = express.Router(); const ordersCountController = require('../controllers/ordersCountController'); const ordersController = require('../controllers/ordersController'); const weeklyReportsController = require('../controllers/weeklyReportsController'); router.get('/orders_count', ordersCountController); router.get('/orders', ordersController); router.get('/weekly_reports', weeklyReportsController); module.exports = router; My controllers/weeklyReportsController.js file: const weeklyReportsService = require('../services/weeklyReportsService'); const weeklyReportsController = async (req, res) => { try { const data = await weeklyReportsService; res.json({data}) console