Как извлечь данные из третьего столбца после сравнения двух столбцов в Pandas кадре данных - PullRequest
0 голосов
/ 19 февраля 2020

Я создал этот фрейм данных и использовал его для сравнения идентификаторов, зарегистрированных для отправленных идентификаторов. Я получил строки, которые идентифицируют, что идентификаторы с 6 по 9 не зарегистрированы.

G:/Sample Processing/Health Scheme Comparison/Health Scheme Files/HSTEST3.csv
G:/Sample Processing/Health Scheme Comparison/Labware Files/LWTEST3.csv
   IDs Registered  IDs Sent  SubRef
0             0.0       1.0   X1234
1             0.0       2.0   X1234
2             0.0       3.0   X1234
3             0.0       4.0  X12345
4             0.0       5.0  X12345
5             0.0       6.0  X12345
6             0.0       7.0  X12345
7             0.0       8.0  X65432
8             0.0       9.0  X65432
0             1.0       0.0       0
1             2.0       0.0       0
2             3.0       0.0       0
3             4.0       0.0       0
4             5.0       0.0       0
[6.0, 7.0, 8.0, 9.0]
[6.0, 7.0, 8.0, 9.0]

Есть ли способ идентифицировать Subrefs, связанные с идентификаторами с 6 по 9, в виде строки?

Я бы использовал это для создания отображения уникальных Subrefs с использованием tkinter или write в файл CSV.

Мой код для создания фрейма из двух CSV-файлов:

import pandas as pd


def compare():
    filepathHS = open(r"G:\Sample Processing\Health Scheme Comparison\Filepaths\HSFilepath.txt","r")
    filepathcontentsHS = filepathHS.read()
    HSdataSrceID = pd.read_csv(f'{filepathcontentsHS}', usecols=['LabelID','SubRef'])
    HSdataSrceID.rename(columns={'LabelID':'IDs Sent'}, inplace=True)
    filepathLW = open(r"G:\Sample Processing\Health Scheme Comparison\Filepaths\LWFilepath.txt","r")
    filepathcontentsLW = filepathLW.read()
    LWdataSrceID = pd.read_csv(f'{filepathcontentsLW}', usecols=['Label ID (HS Number)'])
    LWdataSrceID.rename(columns={'Label ID (HS Number)':'IDs Registered'}, inplace=True)
    AllData = pd.concat ([HSdataSrceID, LWdataSrceID], sort=True)
    Values = {'IDs Sent': 0, 'SubRef': 0,'IDs Registered':0}
    AllData.fillna(value = Values, inplace=True)
    print (AllData)
    UnregisteredItems = sorted(set(AllData['IDs Sent']) - set(AllData['IDs Registered']))
    print (UnregisteredItems)
    UnregisteredItemsStr = str(UnregisteredItems)
    print (UnregisteredItemsStr)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...