我正在尝试将名为“变量”的列拆分为另外两个列“类型”和“参数”

  BatchNumber PhaseNumber SiteID   variable  Values
0  4552694035       0020B      2  min_tempC    27.0
1  4552694035     OverAll      2  max_tempF    24.0


我试图使用下面的代码

weatherData = weatherData['variable'].str.split('_', 1)


但是没有得到预期的结果。
预期结果如下。

  BatchNumber PhaseNumber SiteID   variable  Values     Type    Parameter
0  4552694035       0020B      2  min_tempC    27.0     min     tempC
1  4552694035     OverAll      2  max_tempF    24.0     max     tempF


任何人都知道..如何得到它?

最佳答案

DataFrame.pop用于具有split的提取列,并将参数expand=True用于DataFrame

weatherData[['Type','Parameter']]=weatherData.pop('variable').str.split('_', 1, expand=True)
print (weatherData)
   BatchNumber PhaseNumber  SiteID  Values Type Parameter
0   4552694035       0020B       2    27.0  min     tempC
1   4552694035     OverAll       2    24.0  max     tempF


如果还要原始列,请删除pop

weatherData[['Type','Parameter']] = weatherData['variable'].str.split('_', 1, expand=True)
print (weatherData)
   BatchNumber PhaseNumber  SiteID   variable  Values Type Parameter
0   4552694035       0020B       2  min_tempC    27.0  min     tempC
1   4552694035     OverAll       2  max_tempF    24.0  max     tempF

关于python - 如何将数据框列拆分为 Pandas 中的另一列?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49776841/

10-12 22:48