python - 重复出现一列的值并更新另一列的值

标签 python pandas numpy

我的数据集如下所示:

Country | ProductType 
USA     |    A        
China   |    B        
Japan   |    A        
Ireland |    B        
France  |    A        

我需要复制每个国家/地区的出现,并在 ProductType 列中分配相应的值,以便为每个国家/地区提供产品 A 和 B。

我在找什么:

Country | ProductType
USA     | A
USA     | B
China   | A
China   | B
Japan   | A
Japan   | B
Ireland | A
Ireland | B
France  | A
France  | B

有什么关于 pythonic 方法的想法吗?抱歉标题太模糊了。 干杯:)

最佳答案

使用pd.melt ,如下:

df['A'] = 'A'
df['B'] = 'B'
pd.melt(df, id_vars='Country', value_vars=['A', 'B']).sort_values('Country')

关于python - 重复出现一列的值并更新另一列的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55953473/

相关文章:

python - 在numpy中使用旋转矩阵有效地旋转一组点

python - 将一个列表中的当前元素与另一个列表中的下一个元素进行比较

python - 如何访问和可视化预训练的 TensorFlow 2 模型中的权重?

python - 找到最有效的对组

python - 获取 3d 列表中唯一元素的最低索引的高效算法

python - 将包含重复值的行删除到 pandas 数据框中的 2 列中

python - Numpy 数组与 Python 数组

即使我的路径是正确的,Sublime3 也无法识别 Python?

python - isinstance() 和 np.issubdtype() 有什么区别?

python - groupby 后保留形状