- Demon's Souls topic
- PlayerUnknown’s Battlegrounds
- PlayStation 5
- Call of Duty: Modern Warfare III (2023)
- Xbox Series X|S
- Fortnite - Battle Royale & Save the World (PC, XO, PS4, Switch, Mobil)
- Path of Exile (ARPG)
- [SoP] God of War Ragnarök - Szeptemberben jön a PC-s kiadás
- The Elder Scrolls V: Skyrim
- World of Tanks - MMO
-
GAMEPOD.hu
Új hozzászólás Aktív témák
-
imibogyo
veterán
Lehet nem jó helyen kérdezek, bár szerintem topik-on (PHP, Python, SQL megoldásokra gondolok/számítok, mint lehetséges megoldások a netes kereséseimre alapozva)...
Az lenne a problémám, hogy van egy sokezer sorból álló vesszővel elválasztott, idézőjelek közötti adatokat tartalmazó CSV állományom mely tele van duplum sorokkal. A sorok mindig azonos számú oszlopból állnak, kivétel ez alól a csillagozás, mely egy új egyedi oszlopba került (esetleg a többi rekordnál segíthet, ha ide, az adott sor tekintetében üres cellába egy egyedi karaktersort teszünk?)...
Például:
"Alma","Körte","1989","","","piros","","","<100>","<200>"
"Alma","Körte","1989","","","piros","","","<100>","<200>"
"Alma","Körte","1989","","","piros","","","<100>","<200>","****"Na most az alap duplumszűrést NP++-ban elvégeztem TextFX-el és a tökéletesen egyforma sorokkal meg is birkózott. Az eredeti 55.000 sorból nagyjából 23.000 maradt. Ez eddig OK. Ez lett az eredmény.
"Alma","Körte","1989","","","piros","","","<100>","<200>"
"Alma","Körte","1989","","","piros","","","<100>","<200>","****"Viszont ahogy látható vannak még duplikációk bőven, mivel a megmaradt duplum sorok nem 100%-ban egyformák (lásd csillagos jelölés, amire szükségem is lenne a jövőben).
Megpróbáltam Excellel is az ismétlődéseket eltávolítani, és bár ez látszólag tökéletes munkát végzett, ugyanis minden ilyen 2-es 3-as 4-es ismétlődésből csak 1 maradt, de itt meg más problémába ütköztem. Ez ugyanis a duplum feltételekként megadott oszlopokat jól lekezelte (Alma, 1989, 100 például), viszont ha csak ennyit adtam meg neki feltételnek, akkor hol a csillagozott sor maradt meg az egyformákból, hol nem, vagyis random lett az eredmény (mivel ugye a csillagozás nem volt feltétel). Ez nekem nem jó, mivel a csillagozás ellenőrzöttséget jelent (esetleg mássá át lehet konvertálni, ha az megoldást hozhat). Ha viszont megadtam az Excelnek, hogy figyelje a csillagos oszlopot is, akkor pedig ugyanazt az eredményt kaptam, mint NP++ esetében, mivel ebben az esetben (jogosan) különbözőnek titulálta a sorokat:
Arra lenne szükségem, hogy a sorokat úgy vonja össze egy valamilyen program, hogy mindig a "leghosszabb" / legtöbb oszlopból álló sort vagyis a csillagozott sort tartsa meg az ismétlődések közül. Jelenleg 8832 ilyen csillagozott rekordom van, amit természetes módon nem szeretnék "elveszíteni", mivel ez 8832 ellenőrzött rekordot jelent.
[ Szerkesztve ]
-
imibogyo
veterán
fogsz egy bármilyen nyelvet és magad írod meg a logikát
HA erre képes lennék nem kérdeznék itt... Én egy már kész, "bevált" szkriptet, vagy megoldást vártam volna, hátha van már valakinek elfekvőben egy, vagy kényszerült már rá ilyet mókolni. A neten találtam számos duplummal foglalkozó témát, de mindegyik a 100%-ban azonos sorokra volt kihegyezve, az meg ugye nekem egyrészt nem jó, másrészt azt már eleve el tudom végezni.Az Exceles ötletet viszont köszönöm. Ez jó lehet, mivel nem tudtam, hogy az elsőt tartja meg, én úgy "éreztem" random a dolog, bár az is tény, hogy komolyabban idő hiány miatt nem vizsgáltam meg a dolgot, mivel ma reggeli a probléma, ma másoltam össze az állományokat.
SZERK: Köszönöm! Az Exceles megoldás működött. Verem a fejem a falba, hogy egy ilyen egyszerű megoldás nem jutott eszembe.
(#9981) martonx: nem tűnik okoskodásnak. Viszont sajnos csak az alap CSV generálására volt minimális ráhatásom, arra sem sok mivel az alap struktúrát egy program köpte ki, amibe majd vissza is akarom olvastatni a kész CSV-t. Abba már nem fognak belekerülni a csillagos mezők, az csak nekem kell a leltározáshoz, hogy tudjam hol tartunk. Viszont kitörölgetni sem akarom a csillagokat, mert akkor a nagyságrendileg 20.000-es állományból eddig leleltározott 8300 rekord ellenőrzöttsége is "elveszne".
Alternatívaként persze meg tudom azt tenni, hogy kitörlöm az összes csillagot egy új fájlban és elvégzem a duplumszűrést. De akkor meg ugye a 2 fájl nem lesz szinkronban és párhuzamosan kell bennük dolgoznom. Egy amiben leltározunk, egy meg ami megy a gépnek importra. A legegyszerűbb persze programon belül lenne leltározni, de arra nincs lehetőség.
Az egész probléma egyébként abból adódott, hogy az alap kb. 19.000 soros CSV-n végül 3 csapatban dolgoztunk (innen a 3x-os adatmennyiség ugyanabból a rekordból) a mester fájlba nem szerettem volna ha bele tudnak nyúlni az ideiglenesen itt dolgozó diákok, ezért minden csoport kapott egy offline változatot belőle. Amikor lejárt a 3 hetes munkaidejük fogtam a 3 fájlt és összemásoltam őket, mert úgy gondoltam, hogy egy "egyszerű" duplumszűréssel majd összevonom az egészet ami igaz is lett volna, ha nincs az egyedi jelölésünk. Na itt tartok most.
[ Szerkesztve ]
-
imibogyo
veterán
válasz bambano #9983 üzenetére
Na igen pont azért kérdeztem itt, mert biztos voltam benne, hogy valakinek ez ujjgyakorlat. Viszont attól, hogy most ezt leírtad, hogy nem nagy durranás linuxon awk-ban, ettől még ÉN nem lettem volna előrébb, ez nem segítség egy amatőrnek a témában. De a másik megoldás már működött, így végülis lényegtelen.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Óra topik
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- Samsung Galaxy S10 és S10+ duplateszt
- Poco F5 - pokolian jó ajánlat
- Mibe tegyem a megtakarításaimat?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Kerékpárosok, bringások ide!
- Demon's Souls topic
- Windows 11
- Házimozi belépő szinten
- További aktív témák...
- ThinkPad X1 Carbon 5th 14" FHD IPS i7-7600U 16GB 256GB NVMe ujjlolv gar
- Philips Evnia 42M2N8900 (42", OLED, 3840x2160, 138Hz, HDR10, G-Sync) Új, Bontatlan!
- Latitude 5400 27% 14" FHD IPS érintő i5-8365U 16GB DDR4 256GB SSD ujjlolv gar
- Dell Alienware AW3423DWF (34", OLED, 3440x1440, 165Hz, 0,1ms) Új, Bontatlan!
- ÚJ Rose Gold HP Pavilion x360 2-in-1 / 14" FHD Touch / i7-1355U / 16GB / 1TB / Win11 / 3 év garancia
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: Ozeki Kft.
Város: Debrecen