Python 熊猫:如何使用字符串进行分组使用字符串
我有一个带有新行分隔符的csv文件,我将它读入一个数据帧Python 熊猫:如何使用字符串进行分组使用字符串,python,pandas,pandas-groupby,Python,Pandas,Pandas Groupby,我有一个带有新行分隔符的csv文件,我将它读入一个数据帧 df = pd.dataframe("data.csv", delimiter="\n", header=None) 这个返回类似这样的值 marker1 10 20 30 marker2 40 50 marker3 60 70 80 90 100 ..... 我想生成一个数据帧,如下所示 marker1 10 marker1 20 marker1 30 marker2 40 marker2 5
df = pd.dataframe("data.csv", delimiter="\n", header=None)
这个返回类似这样的值
marker1
10
20
30
marker2
40
50
marker3
60
70
80
90
100
.....
我想生成一个数据帧,如下所示
marker1 10
marker1 20
marker1 30
marker2 40
marker2 50
marker3 60
marker3 70
marker3 80
marker3 90
marker3 100
我认为groupby可以做到这一点,但我不知道如何继续。我该怎么做
谢谢
Ranga使用和
使用和
使用
contains
并将这些单元格包含标记分配给其他列,然后执行ffill
,并选择col not equals to New col
df['New']=df.loc[df.col.str.contains('marker'),'col']
df.New=df.New.ffill()
df=df.query('New!=col')
df
col New
1 10 marker1
2 20 marker1
3 30 marker1
5 40 marker2
6 50 marker2
8 60 marker3
9 70 marker3
10 80 marker3
11 90 marker3
12 100 marker3
使用
contains
并将这些单元格包含标记分配给其他列,然后执行ffill
,并选择col not equals to New col
df['New']=df.loc[df.col.str.contains('marker'),'col']
df.New=df.New.ffill()
df=df.query('New!=col')
df
col New
1 10 marker1
2 20 marker1
3 30 marker1
5 40 marker2
6 50 marker2
8 60 marker3
9 70 marker3
10 80 marker3
11 90 marker3
12 100 marker3
@LostInTheFrequencyDomain仅从
cond
检索False
值。然后,.index
检索cond所在的索引False@LostInTheFrequencyDomain仅从cond
中检索False
值。然后,.index
检索cond为False的索引