DateTime преобразовывают формат в шестнадцатеричную систему

использовать merge

new_table = pd.merge(Table1,Table2,how='left',on='ProjectID')

пройти через документы

5
задан Alan 5 April 2009 в 15:38
поделиться

3 ответа

Это - простое битовое поле, даже при том, что это - довольно странный формат времени :)

1111101100100101101001001011100
                         011100 - 28 minutes
                    01001       - 09 hours
               11010            - 26 days
           0010                 - month 3 (zero-based, hence 2)
11111011001                     - 2009 years

было бы мое предположение.

11
ответ дан 18 December 2019 в 13:19
поделиться

Год на 12 битов, месяц на 4 бита день на 5 битов, (на основе 0), час на 5 битов, минута на 6 битов.

Хорошая загадка :-)

2
ответ дан 18 December 2019 в 13:19
поделиться

Я понимаю, что это старая тема, но я нашел ее полезной и решил добавить к ней свои 2 цента.

u8 getMinutes(u32 in)
{
    return in & 0x3f;
}

u8 getHours(u32 in)
{
    return (in>>6) & 0x1f;
}

u8 getDays(u32 in)
{
    return (in>>11) & 0x1f;
}

u8 getMonths(u32 in)
{
    return ((in>>16)& 0xf)+1;
}

u16 getYears(u32 in)
{
    return (in>>20) & 0x7ff;
}

void printDate(u32 in)
{
    printf("%d/%d/%d - %d:%d", getDays(in), getMonths(in), getYears(in), getHours(in), getMinutes(in));
}

int main(int argc, char *argv[])
{
    u32 t = 0x7D92D25C;
    printDate(t);
    return 0;
}
1
ответ дан 18 December 2019 в 13:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: