англійськафранцузькаіспанська

Ad


Значок OnWorks

funjoin - онлайн у хмарі

Запустіть funjoin у постачальника безкоштовного хостингу OnWorks через Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

Це команда funjoin, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

ПРОГРАМА:

ІМ'Я


funjoin - об'єднати дві або більше FITS двійкових таблиць за вказаними стовпцями

СИНТАКСИС


funjoin [перемикачі] ...

ВАРІАНТИ


-a cols # стовпців для активації в усіх файлах
-a1 cols ... і cols # стовпців для активації в кожному файлі
-b 'c1:bvl,c2:bv2' # порожні значення для загальних стовпців у всіх файлах
-bn 'c1:bv1,c2:bv2' # пусті значення для стовпців у певних файлах
-j col # стовпець для приєднання до всіх файлів
-j1 col ... jn col # стовпець для приєднання до кожного файлу
-m min # min відповідає для виведення рядка
-M max # max відповідає для виведення рядка
-s # додати стовпець стану "jfiles".
-S col # додати стовпець як стовпець стану
-t tol # допуск для з'єднання числових стовпців [лише 2 файли]

ОПИС


funjoin об’єднує рядки з двох або більше (до 32) файлів FITS двійкової таблиці на основі
значення вказаних стовпців об’єднання в кожному файлі. Примітка: стовпці об’єднання повинні мати індекс
файл, пов'язаний з ним. Ці файли створюються за допомогою funindex програми.

Перший аргумент програми визначає першу вхідну таблицю FITS або необроблений файл подій.
Якщо вказано "stdin", дані зчитуються зі стандартного введення. Подальші аргументи
вкажіть додаткові файли подій і таблиці для приєднання. Останнім аргументом є вихідний FITS
файлу.

NB: Зробіть НЕ використовуйте Funtools Bracket Notation, щоб вказати розширення FITS і фільтри рядків, коли
запустивши funjoin, інакше ви отримаєте неправильні результати. Доступ до рядків і їх з’єднання здійснюється за допомогою
індексувати файли безпосередньо, і це обходить всю фільтрацію.

Стовпці об’єднання вказуються за допомогою -j з перемикач (який визначає назву стовпця до
використовувати для всіх файлів) або з -j1 col1, -j2 col2, ... -jn колон перемикачі (які вказують a
ім'я стовпця для кожного файлу). Для кожного файлу необхідно вказати стовпець приєднання. Якщо обидва
-j з та -jn колон вказуються для даного файлу, то використовується останній. Об’єднати стовпці
має бути типу рядковий або числовим типом; нелегально змішувати числові та рядкові
стовпців у даному об’єднанні. Наприклад, щоб об’єднати три файли за допомогою одного ключового стовпця for
кожен файл, використовуйте:

funjoin -j ключ in1.fits in2.fits in3.fits out.fits

Для третього файлу можна вказати інший ключ таким чином:

funjoin -j ключ -j3 otherkey in1.fits in2.fits in3.fits out.fits

Команда -a "cools" перемикач (і -а1 "col1", -а2 "cols2" відповідники) можна використовувати для вказівки
стовпці для активації (тобто запису у вихідний файл) для кожного вхідного файлу. За замовчуванням все
виводяться стовпці.

Якщо два або більше стовпців з окремих файлів мають однакову назву, другий (і наступні)
стовпці перейменовуються, щоб мати символ підкреслення та числове значення.

Команда -m хвилин та -M Макс перемикачі визначають мінімальну та максимальну кількість об’єднань, необхідних для
виписати рядок. Мінімум за замовчуванням — 0 об’єднань (тобто всі рядки виписані) і
Максимум за замовчуванням становить 63 (максимальна кількість можливих об’єднань з обмеженням 32 введення
файли). Наприклад, виписати тільки ті рядки, в яких рівно два файли мають стовпці
що збігається (тобто одне приєднання):

funjoin -j ключ -m 1 -M 1 in1.fits in2.fits in3.fits ... out.fits

Даний рядок може мати необхідну кількість об’єднань без об’єднання всіх файлів
(наприклад, три файли об'єднуються, але лише два мають задане значення ключа об'єднання). У цьому
У випадку, усі стовпці неприєднаного файлу за замовчуванням записуються з використанням пробілів
(нулі або NULL). The -b c1:bv1,c2:bv2 і -b1 'c1:bv1,c2:bv2' -b2 'c1:bv1,c2 - bv2' ...
перемикачі можна використовувати для встановлення пустого значення для стовпців, загальних для всіх файлів та/або стовпців
у вказаному файлі, відповідно. Кожен порожній рядок значення містить список, розділений комами
специфікаторів column:blank_val. Для значень з плаваючою комою (одинарних або подвійних) регістр-
нечутливе рядкове значення "nan" означає, що слід використовувати IEEE NaN (не число).
Таким чином, наприклад:

funjoin -b "AKEY:???" -b1 "A:-1" -b3 "G:NaN,E:-1,F:-100" ...

означає, що не приєднаний стовпець AKEY у будь-якому файлі міститиме рядок "???", не-
joined Стовпець файлу 1 міститиме значення -1, не приєднаний стовпець G файлу 3
міститиме IEEE NaN, а не приєднані стовпці E та F одного файлу
значення -1 і -100 відповідно. Звичайно, де є загальні та конкретні пробіли
зазначене для того самого стовпця, використовується конкретне значення пробілу.

Щоб розрізнити, які файли є непустими компонентами даного рядка, -s (статус) перемикач
можна використовувати для додавання стовпця бітової маски з назвою "JFILES" до вихідного файлу. У цій колонці а
біт встановлюється для кожного непустого файлу, що складає даний рядок, при цьому біт 0 відповідає
перший файл, біт 1 до другого файлу і так далі. Самі імена файлів зберігаються в
заголовок FITS як параметри з іменами JFILE1, JFILE2 тощо -S з перемикач дозволяє
змінити назву стовпця стану з "JFILES" за замовчуванням.

Об’єднання між рядками — це декартовий добуток усіх рядків в одному файлі, що мають дане об’єднання
значення стовпця з усіма рядками у другому файлі, які мають однакове значення для стовпця приєднання та
так далі. Таким чином, якщо file1 має 2 рядки зі значенням стовпця приєднання 100, file2 має 3 рядки з
те саме значення, а файл3 має 4 рядки, тоді об’єднання призводить до виведення 2*3*4=24 рядки.

Алгоритм об’єднання безпосередньо обробляє файл індексу, пов’язаний із стовпцем об’єднання
кожен файл. За основу вибирається найменше значення з усіх поточних стовпців, а це
value використовується для об'єднання стовпців з однаковими значеннями в інших файлах. Таким чином індекс
файли обходять рівно один раз.

Команда -t тол switch визначає значення допуску для числових стовпців. В даний час а
значення допуска може об'єднувати лише два файли одночасно. (Зовсім інший алгоритм
потрібне об’єднання більше двох файлів із використанням допуску, що ми можемо розглянути
впровадження в майбутньому.)

У наступному прикладі показано багато функцій funjoin. Вхідні файли t1.fits,
t2.fits і t3.fits містять такі стовпці:

[sh] fundisp t1.fits
AKEY KEY AB
----------- ------ ------ ------
ааа 0 0 1
bbb 1 3 4
cc 2 6 7
ддд 3 9 10
eee 4 12 13
дфф 5 15 16
ggg 6 18 19
гхх 7 21 22

fundisp t2.fits
AKEY KEY CD
----------- ------ ------ ------
iii 8 24 25
ggg 6 18 19
eee 4 12 13
cc 2 6 7
ааа 0 0 1

fundisp t3.fits
AKEY KEY EFG ------------ ------ -------- --------
-----------
ggg 6 18 19 100.10
jjj 9 27 28 200.20
ааа 0 0 1 300.30
ддд 3 9 10 400.40

З огляду на ці вхідні файли, така команда funjoin:

funjoin -s -a1 "-B" -a2 "-D" -a3 "-E" -b \
"КЛЮЧ:???" -b1 "AKEY:XXX,A:255" -b3 "G:NaN,E:-1,F:-100" \
-j клавіша t1.відповідає t2.відповідає t3.відповідає foo.fits

об’єднає файли в стовпці KEY, вивівши всі стовпці, крім B (у t1.fits), D (у
t2.fits) і E (у t3.fits), а також встановлення пустих значень для AKEY (у всьому світі, але замінено
для t1.fits) і A (у файлі 1) і G, E і F (у файлі 3). Буде стовпець JFILES
вихід, щоб позначити, які файли були використані в кожному рядку:

AKEY KEY A AKEY_2 KEY_2 C AKEY_3 KEY_3 FG JFILES
------------ ------ ------ ------------ ------ ------ -- ---------- ------ -------- ----------- --------
ааа 0 0 ааа 0 0 ааа 0 1 300.30 7
bbb 1 3 ??? 0 0 ??? 0 -100 нан 1
ccc 2 6 ccc 2 6 ??? 0 -100 нан 3
ддд 3 9 ??? 0 0 ддд 3 10 400.40 5
eee 4 12 eee 4 12 ??? 0 -100 нан 3
fff 5 15 ??? 0 0 ??? 0 -100 нан 1
ggg 6 18 ggg 6 18 ggg 6 19 100.10 7
гхх 7 21??? 0 0 ??? 0 -100 нан 1
XXX 0 255 iii 8 24 ??? 0 -100 нан 2
XXX 0 255 ??? 0 0 jjj 9 28 200.20 4

Використовуйте funjoin онлайн за допомогою служб onworks.net


Безкоштовні сервери та робочі станції

Завантажте програми для Windows і Linux

Команди Linux

Ad