Reputation: 79
I have a very large dataframe whose column values are all sets, set()
. Like for example:
index val1 val2
1 {reg, sgs} {dsggs, sgsg}
2 {34, gsg} {sdg, 23}
I want to get only their elements or values. What is the easiest way of doing it?
index val1 val2
1 reg, sgs dsggs, sgsg
2 34, gsg sdg, 23
Thanks
Upvotes: 1
Views: 795
Reputation: 4839
Use df.applymap
to apply a function to every value in every column.
import pandas as pd
def main():
df = pd.DataFrame(data={
'val1': [{'reg', 'sgs'}, {34, 'gsg'}],
'val2': [{'dsggs', 'sgsg'}, {'sdg', 23}],
})
print(df.applymap(lambda s: ", ".join(map(str, s))))
if __name__ == '__main__':
main()
Output:
val1 val2
0 reg, sgs dsggs, sgsg
1 gsg, 34 sdg, 23
Upvotes: 1