Compte tenu de ces deux ensembles de données:Étant donné deux ensembles de données avec 3 colonnes, extraire les lignes pour lesquelles la valeur de la troisième colonne est à peu près égale dans les deux ensembles de données
data_set_1.txt
: https://pastebin.com/VQrsv8kU
data_set_2.txt
: https://pastebin.com/jFBa6kZq
(Il est possible de les télécharger sans vous inscrire)
Je suis en train d'obtenir les valeurs de x_1
, y_1
, x_2
et y_2
pour lesquels:
z_1 = z_2
(dans un seuil).
Existe-t-il un moyen de le faire?
1) Les deux ensembles de données ne sont pas la même longueur,
2) Depuis z_1
et z_2
ne sera jamais exactement égal, j'ai essayé ce qui suit:
import numpy as np
y_1, z_1, x_1 = np.loadtxt('./data_set_1.txt').T
y_2, z_2, x_2 = np.loadtxt('./data_set_2.txt').T
threshold = 0.000005
for i in z_1:
for j in z_2:
if abs(i - j) < threshold:
print "i = ", ('%.13f' % i)
print "j = ", ('%.13f' % j)
Le résultat est le suivant :
i = -941.4594925722633
j = -941.4594947788443
i = -941.4456535625201
j = -941.4456565008313
i = -941.4291125503427
j = -941.4291149979141
i = -941.4326065311985
j = -941.4326072530644
i = -941.4098552554067
j = -941.4098593315858
i = -941.4138389914422
j = -941.4138343941854
i = -941.3961673813864
j = -941.3961719676133
i = -941.3984112845883
j = -941.3984098947884
i = -941.3838698217477
j = -941.3838733787329
i = -941.4001013025463
j = -941.4001055479807
Il est possible de vérifier que cela fonctionne parce que i = -941.4594925722633
se trouve sur laLa colonnede ./data_set_1.dat
et j = -941.4594947788443
est trouvée sur ./data_set_2.dat
.
Maintenant, chacun de ces imprimés i
résultats contiennent une x_1
et y_1
De même, chacun de ces j
résultats contiennent une x_2
et y_2
Je ne parviens pas à extraire x_1
, y_1
, x_2
et y_2
Vous ne nous montrez aucune de vos propres tentatives. Avez-vous essayé quelque chose vous-même, et quels ont été les problèmes avec cette approche? En outre, voulez-vous une approche qui évolue bien pour les ensembles de données plus volumineux? –
@RoryDaulton Oui, désolé, j'ai eu quelques tentatives, (je voulais juste garder la question courte) - édité –
@Rory Daulton Fait –