Python 如何从仅包含非空值的两列中形成元组列

Python 如何从仅包含非空值的两列中形成元组列,python,pandas,tuples,Python,Pandas,Tuples,这是这个的延伸 使用 df['new_col'] = zip(df.lat, df.long) 将多个列组合成元组的步骤 如何删除(或不添加)作为元组的空元素(列)应仅包含非空值 举个例子: instead of ('a','') or ('a',) display ('a') 还有,有没有办法把元组转换成一个集合呢?谢谢大家的评论,这里有一些对我有用的东西: import copy def remove_empty(x): for c in copy.copy(x):

这是这个的延伸

使用

 df['new_col'] = zip(df.lat, df.long)
将多个列组合成元组的步骤

如何删除(或不添加)作为元组的空元素(列)应仅包含非空值

举个例子:

instead of ('a','') or ('a',)
display     ('a')

还有,有没有办法把元组转换成一个集合呢?

谢谢大家的评论,这里有一些对我有用的东西:

import copy
def remove_empty(x):
    for c in copy.copy(x): 
        if not c: 
            x.discard(c)
    return x

df['new_col'] = zip(df.lat, df.long)
df['new_col'] = df['new_col'].apply(set)
df['new_col'] = df['new_col'].apply(remove_empty)

难道不应该
df1=df.dropna(子集=['lat','long'])df['new\u col']=zip(df1['lat',df1['long'])
?另外,在1或两个col都为null的情况下,您打算显示什么?只是空元组,我刚刚使用了链接线程中的示例,我正在研究不同的应用程序,这似乎有点道理:在您的示例中,输出类型是元组或单个元素,具体取决于行。一列不能同时具有两种输出类型。要设置的元组:
set(mytuple)