Если вы хотите установить столбец, на который вы фильтруете новый индекс, вы также можете использовать .filter
; если вы хотите сохранить его как отдельный столбец, тогда str.contains
- путь.
Допустим, у вас есть
df = pd.DataFrame({'vals': [1, 2, 3, 4, 5], 'ids': [u'aball', u'bball', u'cnut', u'fball', 'ballxyz']})
ids vals
0 aball 1
1 bball 2
2 cnut 3
3 fball 4
4 ballxyz 5
, и ваш план состоит в том, чтобы отфильтровать все строки в который ids
содержит ball
и устанавливает ids
в качестве нового индекса, вы можете сделать
df.set_index('ids').filter(like='ball', axis=0)
, который дает
vals
ids
aball 1
bball 2
fball 4
ballxyz 5
Но filter
также позволяет вам передайте регулярное выражение, чтобы вы могли также фильтровать только те строки, где запись столбца заканчивается на ball
. В этом случае вы используете
df.set_index('ids').filter(regex='ball$', axis=0)
vals
ids
aball 1
bball 2
fball 4
. Обратите внимание, что теперь запись с ballxyz
не включается, поскольку она начинается с ball
и не заканчивается им.
Если вы хотите получить все записи, начинающиеся с ball
, вы можете просто использовать
df.set_index('ids').filter(regex='^ball', axis=0)
, давая
vals
ids
ballxyz 5
То же самое работает с столбцами; все, что вам нужно изменить, это axis=0
. Если вы фильтруете на основе столбцов, это будет axis=1
.
Доступ к физическому принтеру и отправка его для печати довольно сложная и выходит за рамки того, что я сделал с Lua, но я бы предложил проверить этот пост форума .
. Лучшим вариантом может быть сохранение материала, который вы хотите распечатать, в текстовый файл (например, в формате PDF с использованием библиотеки Lua to PDF), есть несколько доступных в Google Поиске, таких как этот с помощью cpressey или этот jung-kurt ), а затем с помощью C ++ или другого языка для отправки этого файла на физический принтер и печати.
Надеюсь, вы найдете это полезным, у вас отличный выходной!