Ne garder qu'une ligne toutes les 30min

Résolu/Fermé
Tilouue Messages postés 10 Date d'inscription jeudi 10 mai 2018 Statut Membre Dernière intervention 12 mai 2018 - 10 mai 2018 à 10:24
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 12 mai 2018 à 23:27
Bonjour,

Je cherche à connaître l'occupation d'animaux à un lieu donné.
Mon document Excel contient une ligne pour chaque heure:minute:seconde différent, à laquelle l'animal a été vu. Et ceci sur plusieurs années donc j'ai des milliers de lignes.

Je souhaiterais ne garder qu'une valeur toutes les 30min, à partir de la première valeur.
Par exemple, si l'animal a été vu à 01:58 je souhaiterais éliminer les lignes jusqu'à 02:28.

Merci de votre aide

3 réponses

ccm81 Messages postés 10903 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 19 novembre 2024 2 428
10 mai 2018 à 10:47
Bonjour

Il faudra certainement passer par vba (macro)
Peux tu envoyer un bout de ton fichier sur cjoint.com et joindre le lien obtenu à ton prochain message. N'oublies pas d'y ajouter des explications et des exemples de résultat attendu
1) Tu vas dans https://www.cjoint.com/
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier
3) Tu descends en bas de la page pour cliquer sur [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien
en bleu souligné ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse tu fais "Coller".

Cdlmnt
0
Tilouue Messages postés 10 Date d'inscription jeudi 10 mai 2018 Statut Membre Dernière intervention 12 mai 2018
Modifié le 10 mai 2018 à 11:06
https://www.cjoint.com/c/HEkjgCf5ioi

Voilà un petit extrait de mon fichier, j'ai supprimé des colonnes pour ne garder que celles qui nous intéresse ici.
Dans mon tableau j'ai l'espèce concernée, la date et l'heure à laquelle la photo a été prise, le nombre d'individus sur la photo puis le nom des individus (dans le cas où ils étaient reconnaissables sur la photo).

Je souhaite ne garder qu'un résultat par tranche de 30min pour ne pas prendre en compte plusieurs fois le même animal si il a été pris en photo plusieurs fois de suite.
Donc si l'animal a été photographié à 01:58, je souhaite éliminer toutes les autres photos de cette espèce jusqu'à 02:28. SAUF si dans la colonne "identification", plusieurs individus différents ont été reconnus au cours de ces 30min. Dans ce cas je souhaite garder une ligne par animal identifié différent.

J'espère avoir été claire...
Merci
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
10 mai 2018 à 13:12
Bonjour,

tu ne dis pas quoi faire des non identifiés.
Tout supprimer ? Tout garder ? N'en garder qu'un par 1/2h ?
eric
0
Tilouue Messages postés 10 Date d'inscription jeudi 10 mai 2018 Statut Membre Dernière intervention 12 mai 2018
Modifié le 10 mai 2018 à 13:28
La colonne des animaux identifiés n'est pas la plus importante, disons qu'elle donne des informations supplémentaires.
Je souhaite garder une ligne par 1/2h, sauf si il y a plus d'un animal identifié. Par exemple si la première ligne est non identifiée et la deuxième a un nom, je ne garde que celle avec le nom. Si toutes les colonnes "identification" sont vides, je ne garde que la première (ou celle avec le plus grand nombre d'individus). Si j'ai plusieurs noms différents dans cette 1/2h, je garde une ligne par nom différent.

Par ailleurs (encore quelque chose que je n'ai pas précisé), si au cours de ces 30min il y a des lignes similaires avec des nombres d'individus différents, je souhaite garder la ligne avec le plus grand nombre d'individus.

J'espère que tout ça a du sens...
Merci

PS: après réflexion, j'ai modifié cette réponse après l'avoir publiée une première fois...
0
ccm81 Messages postés 10903 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 19 novembre 2024 2 428
10 mai 2018 à 14:31
Pas encore très clair.

J'ai essayé d'interpréter
https://www.cjoint.com/c/HEkmCkg5wAB
Mais
Il faudrait que tu envoies une bonne centaine de lignes (en espérant qu'il y figurera tous les cas) complété par le résultat attendu et expliqué comme dans ce que j'ai tenté

Peut être qu'eric (salut amical en passant) y aura vu plus clair

Cdlmnt
0
Tilouue Messages postés 10 Date d'inscription jeudi 10 mai 2018 Statut Membre Dernière intervention 12 mai 2018
10 mai 2018 à 16:09
Merci pour ta réponse.

https://www.cjoint.com/c/HEkoiKyM6Zi

Je t'envoie mon document entier. Dans le premier onglet j'ai indiqué quoi garder ou pas en exemple pour les premières lignes. Dans le deuxième onglet, j'ai essayé de mieux expliquer ce que je cherche à faire.

Merci beaucoup pour votre temps.
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
Modifié le 10 mai 2018 à 17:28
Comme tu dis pas encore bien clair sur les priorités.
J'ai encore des interrogation comme pour :
si au cours de ces 30min il y a des lignes similaires avec des nombres d'individus différents, je souhaite garder la ligne avec le plus grand nombre d'individus.
Donc si a 22:00 tu as 4 animaux identifiés et qu'à 22:01 tu en vois 5 avec aucun d'identifiés, tu préfères conserver la dernière ligne et perdre les 4 identifiés...
Tu confirmes ?

Et si à 22:01 finalement tu as 1 ou 2 ou 3 identifiés.
A partir de quand il est préférable de garder l'une ou l'autre ? pas évident...

Je n'ai pas encore regardé les derniers fichiers.
Et le fait que ce soit en 1/2h glissantes complique singulièrement.
Un événement peut impacter des événements passés et eux-même faire boule de neige sur d'autres.
Ca ne peut pas être en tranches d'1/2h (ou d'1h) fixes ?

eric
0
Tilouue Messages postés 10 Date d'inscription jeudi 10 mai 2018 Statut Membre Dernière intervention 12 mai 2018
10 mai 2018 à 17:44
Effectivement mon problème ce sont ces 1/2h "glissantes", car j'avais trouvé une solution pour avoir des 1/2h fixes. Car si j'ai un animal à 21h58 mais qui reste autour de la caméra jusqu'à 22h10, je vais le compter 2 fois alors que je ne veux le compter qu'une fois...

Effectivement, si à 22h00 j'ai 4 animaux identifiés et à 22h01 j'en ai 5 non identifié, je préfère garder les 5. Pour cette étude je préfère savoir le nombre d'individus différents ayant visité le lieu, plutôt que de savoir quels individus exactement.
Mais si au cours d'une 1/2h toutes mes lignes comprennent un seul individu et que l'animal est identifié sur une des lignes, je garderai celle-ci au lieu de la première qui n'aurais pas d'identification.

Si l'animal a déjà été identifié une fois dans la 1/2h, je ne le recompte pas. Par contre si 1 ou plusieurs autres individus apparaissent, je souhaite les comptabiliser.

Pour résumer, je cherche à connaître le nombre d'individus visitant ce lieu, sans compter plusieurs fois un même individu qui tournerais autour de la caméra.

Désolée pour la confusion, ce n'est pas évident à expliquer...
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
10 mai 2018 à 22:44
Je comprend l'esprit, aux détails particuliers près. C'est dans la réalisation que c'est plus complexe...
Je ne sais pas où ccm en est, pour ma part j'en suis seulement à essayer de conceptualiser et laisser mûrir avant de démarrer quoi que ce soit.
Parce que pour l'instant à part une multitude de boucles je ne vois pas. Ce qui risque d'être lent vu qu'il y a 80000 lignes.
Et moi aussi je risque d'être lent sur ce coup car il faut pas mal de temps dispo ;-)

Donc si tu en as 3 en 10' dont 2 d'identifiés, tu gardes les 2 lignes d'identifiés. Tu pars du principe que le 3ème est potentiellement un des 2 identifiés. C'est ça ?
0
Tilouue Messages postés 10 Date d'inscription jeudi 10 mai 2018 Statut Membre Dernière intervention 12 mai 2018
10 mai 2018 à 23:01
Quand on ne sélectionne que les hyènes, ça ne fait "que" 6000 lignes... on peut supprimer les autres espèces pour le moment. :)
Je souhaite aussi déterminer l'occupation pour les chevaux (sauvages) et éventuellement les chacals, mais ça devrait être plus simple puisque je n'ai pas d'identification pour ces espèces.

Et ce n'est qu'une des caméras... j'ai 12 autres fichiers comme celui-là !

Pour ta question, si les 3 individus ne sont pas sur la même photo (la même ligne), oui je pars du principe le 3ème est un des 2 identifiés. Cette caméra est située à un abreuvoir donc les hyènes y reste souvent plusieurs minutes.

Merci beaucoup de ton aide en tout cas. J'espère quand même que tu n'y passeras pas des heures...
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
12 mai 2018 à 11:17
Bonjour,

juste pour un peu de news.
J'ai bien avancé, j'en suis au débogage. Mais comme une ligne en ano est comparée à plusieurs en amont et en aval, c'est un plutôt fastidieux et demande du temps...
Une proposition sans doute ce we ou en début de semaine.
eric
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
12 mai 2018 à 18:54
Voici la moulinette : https://mon-partage.fr/f/X5BNF70d/
Si tu peux tester à fond et ressortir les éventuelles anomalies assez vite stp, tant que c'est frais dans ma tête. Dans 3 jours ça sera plus difficile...
eric
0
Tilouue Messages postés 10 Date d'inscription jeudi 10 mai 2018 Statut Membre Dernière intervention 12 mai 2018
Modifié le 12 mai 2018 à 20:10
Merci ENORMEMENT
Je viens de le tester sur un de mes autres classeurs et j'ai vérifié des lignes au hasard dans celui que tu m'as renvoyé.
J'ai trouvé une seule anomalie : le 24-mars-2017 à 4:28:47 : Pourquoi cette ligne avec Tryo d'identifié n'est pas comptabilisé 1?
C'est vraiment un détail et le reste à l'air parfait.

Merci vraiment pour ton travail en tout cas. C'est la première fois que je demandais de l'aide sur un forum et je suis très agréablement surprise qu'il y ai des gens comme toi qui prennent autant de leur temps pour aider les autres :)
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 247
Modifié le 12 mai 2018 à 23:30
Parce qu'il a été compté à 04:32:49
Rappelle-toi que sont traités en priorité ceux avec le plus d'Individuals, et à Individuals égaux ceux qui ont le plus de noms identifiés.
Comme ça tu es toujours sûre d'avoir le nombre maxi vus simultanément sur une photo pendant une période, en évitant de compter 2 fois un même animal.
Une fois une note attribuée elle n'est plus changée.
Ceux qui arrivent ensuite peuvent avoir des moins en fonction des lignes déjà traitées, aussi bien dans la période qui précède que dans celle qui suit.
C'est ce qui m'a paru le plus efficace et le plus 'simple' pour traiter ton problème.
2(dont 2 identifiés) > 1(1), il est prioritaire.

Tu as testé en mettant Const corrStricte As Boolean = True ?
Les non identifiés ne seront pas comptés s'il s'agit seulement d'un ajout partiel d'identifiés.
0