Панды: Рассчитать общую процентную разницу между двумя фреймами данных - PullRequest
0 голосов
/ 03 января 2019

У меня есть два кадра данных.Я хочу выяснить общую разницу в процентах. Например:

DataFrame1

А1234

DataFrame2В1334

Общий процент = 75%

Ответы [ 3 ]

0 голосов
/ 04 января 2019

Попробуйте:

df1.eq(df2.values).mean()

Вывод:

A    0.75
dtype: float64
0 голосов
/ 04 января 2019
dataframe1 = open("dataframe1.txt")
dataframe2 = open("dataframe2.txt")
data1 = []
data2 = []

counter=0
for i in dataframe1:
    data1.append(i)
for i in dataframe2:
    data2.append(i)
for i in range(len(data1)):
    if data1[i] == data2[i]:
    counter += 1
print("Total percentage the same = ",round((counter/len(data1))*100),"%")

Вам нужно будет поместить ваши данные в текстовый файл, как он называется, или даже изменить его, если хотите.Кроме того, вы можете просто ввести его в data1 и data2, как вы хотите.

0 голосов
/ 04 января 2019

из вашего примера DataFrame1 и 2 - это df1, df2 здесь:

import pandas as pd

df1=pd.DataFrame([1,2,3,4], columns=['A'])
df2=pd.DataFrame([1,3,3,4], columns=['B'])

print('%.f %%' % (100 * (df1.values == df2.values).sum() / df1.size))

выводит 75%

объяснение таково:

(df1.values == df2.values).sum()

- это числоравных значений в векторах.Так что в вашем примере это 3

, а

df1.size

- длина вектора.Итак 4, в вашем примере

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...