我有两列,想将一列的值连接到另一列。我想将“A”列中的值连接到“B”列,但是在“B”列中,如果“B”列中的单元格不为空并且只有值,我希望每个单元格在“B”列中具有两行如果“B”列中的单元格为空,则来自“A”列。
这是数据框
df
A B
Nr.1 18b
Nr.1
Nr.1 18c\nNr.2\n
Nr.1 18d\nNr.1
Nr.2
Nr.2 20a\n
Nr.2 20a\nNr.2
Nr.3 20b\nNr.2\n
Nr.3
所以,在我想要:
df
A B
Nr.1 18b\nNr.1
Nr.1 Nr.1
Nr.1 18c\nNr.1
Nr.1 18d\nNr.1
Nr.2 Nr.2
Nr.2 20a\nNr.2
Nr.2 20a\nNr.2
Nr.3 20b\nNr.2
Nr.3 Nr.3
我试过 df['B'] = df[["B", "A"]].apply(lambda x: ''.join(x.dropna().astype(str)),axis=1) 当我想添加“A”列中的值,并且当“B”列中的单元格以换行符 (\n) 结尾时它会起作用
当我在字符串末尾没有换行符时,我使用 df['B'] = df[["B", "A"]].apply(lambda x: '\n'.join(x.dropna) ().astype(str)),axis=1)
但问题是当我在单元格中已经有两行时。我需要用列“A”中的值替换第二行中的值,并且字符串末尾不应为“\n”。
这是解决这个问题的优雅方法吗?我很感激任何帮助。
catspeake
一只萌萌小番薯
相关分类