簡體   English   中英

如何將一列拆分為逗號分隔的字符串?

[英]how to split a column into comma seperated string?

這是示例 dataframe,a 是我的列名。


    a   b   x
0   1   3   a
1   2   4   a
2   1   3   b
3   2   5   b
4   2   4   c

需要以這種方式分隔列唯一值

required output: '1','2'

下面是我的代碼我得到這樣

x=x1['id'].unique()
x2=','.join("\'"+str(i)+"\'" for i in x)

for this way of code 
i'm getting output some thing like this 
output:"'1','2'"

**2nd approach:**
x2=','.join("\'"+x1['id']+"\'"):

if i'm do this i'm getting the count of id has been increasing

i need to pass output into sql query like select * from abc where a in (x2) for that reason need output something like this

x2 -->'1','2'

i'm getting
x2--->" '1','2'"

嘗試使用 f-strings 的第一種方法使事情變得更容易。

x2 =' ,'.join(f"'{str(i)}'" for i in x)

query = rf"""
SELECT
    *
FROM
    abc
WHERE
    a in ({x2})
"""

如果您嘗試print(query) ,它會給出

SELECT
    *
FROM
    abc
WHERE
    a in ('1' ,'2')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM