问题描述
我有这样的数据框 original data
,我希望有如下所示的新数据框 new data
如何创建此修改的代码? 它需要合并第一个系列数据并创建新的数据框。
解决方法
某些进口:
import pandas as pd
import numpy as np
在这里,我们根据您提供的数据创建数据框:
df = pd.DataFrame({
"a" : [
'A2C02158300','D REC/BAS16-03W 100V 250mA SOD323 0s SMD','D201,D206,D218,D219,D222,D302,D308,D408','D409,D501,D502,D505,D506,D507,D508','A2C02250500','T BIP/PUMD3,SOT363,SMD SOLDERING','T209,T501,T502'
]
})
df.head(10)
输出:
然后我们准备前两列的数据框:
s1 = df.iloc[::4,:]
s1.reset_index(drop=True,inplace=True)
s2 = df.iloc[1::4,:]
s2.reset_index(drop=True,inplace=True)
df = pd.DataFrame({
'a': s1['a'],'b': s2['a']
})
之后,准备并添加第三列:
s3 = df.iloc[2::4,:]
s3.reset_index(drop=True,inplace=True)
s3 = s3['a'].str.split(',').apply(pd.Series,1).stack()
s3.index = s3.index.droplevel(-1)
s3.name = 'c'
df = df.join(s3)
df.reset_index(drop=True,inplace=True)
df
输出: