Вы можете использовать ord и hex следующим образом:
& gt; & gt; & gt; & gt; s = 'some string' & gt; & gt; & gt; & gt; & gt; hex_chars = map (hex, map (ord, s)) & gt; & gt; & gt; & gt; & gt; print hex_chars ['0x73', '0x6f', '0x6d', '0x65', '0x20', '0x73', '0x74', '0x72', '0x69', '0x6e', '0x67'] & gt; gt ; & GT; hex_string = "" .join (c [2: 4] для c в hex_chars) & gt; gt; & gt; gt; print hex_string 736f6d6520737472696e67 & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt; & gt;
Или используйте встроенную кодировку:
& gt; & gt; & gt; & gt; s = 'some string' & gt; & gt; & gt; & gt; & gt; print s.encode ('hex_codec') 736f6d6520737472696e67 & gt; & gt; & gt; & gt; & gt;
Вот два основных подхода. Я предпочитаю это для его удобочитаемости:
bar & lt; - subset (foo, location == "there")
Обратите внимание, что вы можете сгруппировать многие условные выражения с & amp;
и |
для создания сложных подмножеств.
Второй - подход индексации. Вы можете индексировать строки в R с помощью числовых или булевых фрагментов. foo $ location == "there"
возвращает вектор значений T
и F
, которые имеют ту же длину, что и строки из foo
. Вы можете сделать это, чтобы возвращать только строки, где условие возвращает true.
foo [foo $ location == "there",]
subset ()
не предпочтительный метод? Подробное обсуждение здесь – Chetan Arvind Patil 9 August 2017 в 16:56