@ -64,7 +64,9 @@ must be used. Within the same millisecond, sort order is not guaranteed
The following functions are implemented:
- `ULIDgenerate` : Generate a time-based ULID
- `ULIDgenerate` / `generate` / `ulid_generate` : Generate a time-based
ULID
- `ts_generate` : Generate ULID from timestamps
- `unmarshal` : Unmarshal a ULID into a data frame with timestamp and
random bitstring columns
@ -91,7 +93,7 @@ packageVersion("ulid")
ulid::ULIDgenerate()
```
## [1] "0001E2CWNS3ERSFZQ31W4WXVSM "
## [1] "0001E2D1EVWTN5G7C2244Q8SJ8 "
### Many
@ -99,36 +101,51 @@ ulid::ULIDgenerate()
(u < - ulid::ULIDgenerate ( 20 ) )
```
## [1] "0001E2CWNS0ZTZT8N2HBARCQ8F" "0001E2CWNSMQYKTA2DC9M5Q5SG" "0001E2CWNS4SZYS03Z1FXY5THC" "0001E2CWNSS5SJRQESE956SASQ "
## [5] "0001E2CWNS77P6X1MH1E93S9W8" "0001E2CWNSRYBVT63QPFVCHNJ3" "0001E2CWNS7KTHMJ6JPYDR7P66" "0001E2CWNSZRT8DDV952XAC2HH "
## [9] "0001E2CWNS7ZF28CQDHHF84TQA" "0001E2CWNSQT8MDESQ6QGF0FBH" "0001E2CWNSRH50VAGBHAVTZ4C5" "0001E2CWNSQMX29P05JA2NRZ1N "
## [13] "0001E2CWNS0873HP4QQ1VP4MC2" "0001E2CWNS1V29YAKW2GY39E7R" "0001E2CWNSA40H808JCB9ZTY6B" "0001E2CWNSQTZ3Q41V7D6V32XW "
## [17] "0001E2CWNS9XPF4EG450HH8R9H" "0001E2CWNSHZ15YKJR0VA6TQ8S" "0001E2CWNSRAPRP614BM7VW3BP" "0001E2CWNSTGPN4PF6EKPW5H2A "
## [1] "0001E2D1EV54P4DCS24WSYX2R1" "0001E2D1EV0D75WQ55XQ9TQ3RS" "0001E2D1EVPZVD2W626E49GHT6" "0001E2D1EVZCCD9DNH3SSTQN3K "
## [5] "0001E2D1EV6B8SYC81KSMVMM80" "0001E2D1EV5CT6Q9JB5H1SA5RF" "0001E2D1EVZEBD1J5RMGJ9B23S" "0001E2D1EVTX25KJGVGDJ61X5J "
## [9] "0001E2D1EVAT8T7V54G6ZQCX0F" "0001E2D1EVKRPHHANAZ5A070HN" "0001E2D1EVPZJ1NDV7M27TQBH0" "0001E2D1EVVZ0PAJVS3WY08QA4 "
## [13] "0001E2D1EVZRQGQV0MEK65DKRA" "0001E2D1EVV1KP7XEKSEQDV8XQ" "0001E2D1EVZH19KNXG6GVEKKHP" "0001E2D1EVB7D31MKZQTRQP0S1 "
## [17] "0001E2D1EVTPGNFEYW4MKGHZA1" "0001E2D1EV8SG2BCSFS3G7SXFV" "0001E2D1EV22JE3JZYF8P33PGS" "0001E2D1EVC6X98C3TT0N9B75C "
### Unmarshall
### Unmarshal
``` r
unmarshal(u)
```
## ts rnd
## 1 2018-12-28 14:00:09 0ZTZT8N2HBARCQ8F
## 2 2018-12-28 14:00:09 MQYKTA2DC9M5Q5SG
## 3 2018-12-28 14:00:09 4SZYS03Z1FXY5THC
## 4 2018-12-28 14:00:09 S5SJRQESE956SASQ
## 5 2018-12-28 14:00:09 77P6X1MH1E93S9W8
## 6 2018-12-28 14:00:09 RYBVT63QPFVCHNJ3
## 7 2018-12-28 14:00:09 7KTHMJ6JPYDR7P66
## 8 2018-12-28 14:00:09 ZRT8DDV952XAC2HH
## 9 2018-12-28 14:00:09 7ZF28CQDHHF84TQA
## 10 2018-12-28 14:00:09 QT8MDESQ6QGF0FBH
## 11 2018-12-28 14:00:09 RH50VAGBHAVTZ4C5
## 12 2018-12-28 14:00:09 QMX29P05JA2NRZ1N
## 13 2018-12-28 14:00:09 0873HP4QQ1VP4MC2
## 14 2018-12-28 14:00:09 1V29YAKW2GY39E7R
## 15 2018-12-28 14:00:09 A40H808JCB9ZTY6B
## 16 2018-12-28 14:00:09 QTZ3Q41V7D6V32XW
## 17 2018-12-28 14:00:09 9XPF4EG450HH8R9H
## 18 2018-12-28 14:00:09 HZ15YKJR0VA6TQ8S
## 19 2018-12-28 14:00:09 RAPRP614BM7VW3BP
## 20 2018-12-28 14:00:09 TGPN4PF6EKPW5H2A
## 1 2018-12-28 15:21:47 54P4DCS24WSYX2R1
## 2 2018-12-28 15:21:47 0D75WQ55XQ9TQ3RS
## 3 2018-12-28 15:21:47 PZVD2W626E49GHT6
## 4 2018-12-28 15:21:47 ZCCD9DNH3SSTQN3K
## 5 2018-12-28 15:21:47 6B8SYC81KSMVMM80
## 6 2018-12-28 15:21:47 5CT6Q9JB5H1SA5RF
## 7 2018-12-28 15:21:47 ZEBD1J5RMGJ9B23S
## 8 2018-12-28 15:21:47 TX25KJGVGDJ61X5J
## 9 2018-12-28 15:21:47 AT8T7V54G6ZQCX0F
## 10 2018-12-28 15:21:47 KRPHHANAZ5A070HN
## 11 2018-12-28 15:21:47 PZJ1NDV7M27TQBH0
## 12 2018-12-28 15:21:47 VZ0PAJVS3WY08QA4
## 13 2018-12-28 15:21:47 ZRQGQV0MEK65DKRA
## 14 2018-12-28 15:21:47 V1KP7XEKSEQDV8XQ
## 15 2018-12-28 15:21:47 ZH19KNXG6GVEKKHP
## 16 2018-12-28 15:21:47 B7D31MKZQTRQP0S1
## 17 2018-12-28 15:21:47 TPGNFEYW4MKGHZA1
## 18 2018-12-28 15:21:47 8SG2BCSFS3G7SXFV
## 19 2018-12-28 15:21:47 22JE3JZYF8P33PGS
## 20 2018-12-28 15:21:47 C6X98C3TT0N9B75C
### Use defined timestamps
``` r
(ut < - ts_generate ( as . POSIXct ( " 2017-11-01 15:00:00 " , origin = "1970-01-01" ) ) )
```
## [1] "0001CZM6DG91GGPEZMYZ1TNKH3"
``` r
unmarshal(ut)
```
## ts rnd
## 1 2017-11-01 15:00:00 91GGPEZMYZ1TNKH3