[英]I want to print cell value of a column one by one after comma
import pandas as pd
data = {'product_name': ['laptop,computer', 'printer,table', 'tablet,mobile', 'desk', 'chair,table'],
'price': [1200, 150, 300, 450, 200]
}
df_merge = pd.DataFrame(data)
I want to print data by using for loop 1st it should come laptop then computer then printer and so on.我想通过使用 for loop 1st 打印数据,它应该是笔记本电脑,然后是计算机,然后是打印机等等。 for example- enter image description here例如 -在此处输入图像描述
I tried below lines of code but not getting what I want.我尝试了下面的代码行,但没有得到我想要的。
for i in (df_merge.product_name):
print(i)
USING FOR LOOP Code:使用 FOR 循环代码:
for i in (df_merge.product_name):
for s in i.split(','):
print(s)
Output; Output;
laptop
computer
printer
table
tablet
mobile
desk
chair
table
You can use .str.split(',')
and then .explode()
:您可以使用.str.split(',')
然后.explode()
:
print(*df_merge["product_name"].str.split(",").explode(), sep="\n")
Prints:印刷:
laptop
computer
printer
table
tablet
mobile
desk
chair
table
If you want to explode whole dataframe:如果要炸整个dataframe:
df_merge["product_name"] = df_merge["product_name"].str.split(",")
df_merge = df_merge.explode("product_name")
print(df_merge)
Prints:印刷:
product_name price
0 laptop 1200
0 computer 1200
1 printer 150
1 table 150
2 tablet 300
2 mobile 300
3 desk 450
4 chair 200
4 table 200
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.