У меня есть два фрейма данных, которые я хотел бы объединить, если значение одного столбца содержится в другом столбце. Кадры данных выглядят следующим образом:
У меня есть два фрейма данных, которые я хотел бы объединить, если значение одного столбца содержится в другом столбце. Кадры данных выглядят следующим образом: [code]df1 = pl.DataFrame({"col1": [1, 2, 3], "col2": ["x1, x2, x3", "x2, x3", "x3"]}) df2 = pl.DataFrame({"col3": [4, 5, 6], "col4": ["x1", "x2", "x3"]}) [/code] Я пытался сделать: [code]model_data = df1.join(df2, on="col2") [/code] Что не дает желаемого результата. Я бы хотел увидеть что-то вроде этого: [code]shape: (6, 4) ┌──────┬────────────┬──────┬──────┐ │ col1 ┆ col2 ┆ col3 ┆ col4 │ │ --- ┆ --- ┆ --- ┆ --- │ │ i64 ┆ str ┆ i64 ┆ str │ ╞══════╪════════════╪══════╪══════╡ │ 1 ┆ x1, x2, x3 ┆ 4 ┆ x1 │ │ 1 ┆ x1, x2, x3 ┆ 5 ┆ x2 │ │ 1 ┆ x1, x2, x3 ┆ 6 ┆ x3 │ │ 2 ┆ x2, x3 ┆ 5 ┆ x2 │ │ 2 ┆ x2, x3 ┆ 6 ┆ x3 │ │ 3 ┆ x3 ┆ 6 ┆ x3 │ └──────┴────────────┴──────┴──────┘ [/code] Вопрос в том, как выполнить соединение, когда одно значение содержится в другом значении. Я не смог найти хороших примеров в документации.
У меня есть фрейм геоданных. Я хочу объединить перекрывающиеся объекты и объединить поле «Текст».
Я пытался сделать это с помощью растворения, но это не работает
import geopandas as gpd
import pandas as pd
from shapely.geometry import...
У меня есть фрейм геоданных. Я хочу объединить перекрывающиеся объекты и объединить поле «Текст».
Я пытался сделать это с помощью растворения, но это не работает
import geopandas as gpd
import pandas as pd
from shapely.geometry import...
Я попытался сделать это, чтобы создать новый столбец, где каждая строка представляет собой массив, содержащий значения столбца b, умноженные на столбец a.
data = {'a': , 'b': [ , ]}
df = pd.DataFrame(data)
df = df.apply(lambda row: [row * x for x...
Я попытался сделать это, чтобы создать новый столбец, где каждая строка представляет собой массив, содержащий значения столбца b, умноженные на столбец a.
data = {'a': , 'b': [ , ]}
df = pd.DataFrame(data)
df = df.apply(lambda row: [row * x for x...
Я попытался сделать это, чтобы создать новый столбец, где каждая строка представляет собой массив, содержащий значения столбца b, умноженные на столбец a.
data = {'a': , 'b': [ , ]}
df = pd.DataFrame(data)
df = df.apply(lambda row: [row * x for x...