#python #pandas
#python #pandas
Вопрос:
У меня есть фрейм данных pandas df
, который содержит столбец списка
0 1
foo [foo,bar]
bar [bar,foo]
Какой эффективный способ добавить двойные кавычки к каждому элементу списка, чтобы сделать вывод:
0 1
foo ["foo","bar"]
bar ["bar","foo"]
Пожалуйста, предположите, что существует более 2 строк
Комментарии:
1. столбец 1 — это списки строк или просто строки?
2. список строк
Ответ №1:
Используйте понимание списка:
df["1"] = [[f'"{j}"' for j in i] for i in df["1"]]
print (df)
1
0 ["foo", "bar"]
1 ["bar", "foo"]
Комментарии:
1. Это очень элегантное решение. Я бы всегда предпочел понимание списка другим методам.
Ответ №2:
Вы могли бы сделать,
import pandas as pd
df = pd.DataFrame({0: ["foo","bar"], 1: ["bar", "foo"]})
df = '"' df.astype(str) '"'
Результат:
0 1
0 "foo" "bar"
1 "bar" "foo"
Если вы хотите сделать это для определенного столбца, выполните:
df[0] = '"' df[0].astype(str) '"'
Результат:
0 1
0 "foo" bar
1 "bar" foo