小编Ksp*_*spr的帖子

在Python中,从列表中嵌套结构的平面表示创建索引,按字母顺序排序

我有列表,其中每个条目代表一个嵌套结构,其中/代表结构中的每个级别。

['a','a/b/a','a/b','a/b/d',....]
Run Code Online (Sandbox Code Playgroud)

我想获取这样一个列表并返回一个索引列表,其中每个级别按字母顺序排序。

如果我们有以下列表

['a','a/b','a/b/a','a/c','a/c/a','b']
Run Code Online (Sandbox Code Playgroud)

它代表嵌套结构

'a':                   #1

    'b':               #1.1
         'a': ...      #1.1.1
    'c':               #1.2
         'a': ...      #1.2.1
'b' : ...              #2
Run Code Online (Sandbox Code Playgroud)

我正在尝试获取输出

 ['1','1.1','1.1.1', '1.2','1.2.1','2']
Run Code Online (Sandbox Code Playgroud)

但我对如何解决这个问题有真正的问题,它可以递归解决吗?或者对于每个级别由 分隔的任何通用列表,有什么方法可以解决这个问题/?该列表原本不一定是排序的,并且每个级别可以是任何通用词。

python algorithm

6
推荐指数
1
解决办法
214
查看次数

在Python中,在字符串中,如果不是前导多个空格,则用单个空格删除多个空格

我有各种可能有多个前导空格的字符串。

string_1 = '    param A     val A'
string_2 = 'param B    val B'

....
Run Code Online (Sandbox Code Playgroud)

如果多个空格不在字符串的开头,我想用一个空格替换所有多个空格。

我希望上面的输出变成

 string_1 = '    param A val A'z
 string_2 = 'param B val B'
Run Code Online (Sandbox Code Playgroud)

我当前的解决方案无论如何都会用一个空格替换所有多个空格。

 re.sub('\s+',' ',s)
Run Code Online (Sandbox Code Playgroud)

我将如何构造一个仅捕获非前导多个空格的模式?

python regex

3
推荐指数
1
解决办法
357
查看次数

如何在熊猫列中的唯一名称上使用groupby和cumcount

我有一个看起来像这样的数据框

 ID ..... config_name    config_version  ...  
 aa           A                0         
 ab           A                7
 ad           A                7
 ad           A                27   
 bb           B                0     
 cc           C                0      
 cd           C                8 
Run Code Online (Sandbox Code Playgroud)

我想对config_name进行分组,并在每个唯一的config_version上应用cumcount,以便获得诸如

 ID ..... config_name    config_version     config_version_count 
 aa           A                0                     0        
 ab           A                7                     1
 ad           A                7                     1  
 ad           A                27                    2 
 bb           B                0                     0
 cc           C                0                     0
 cd           C                8                     1
Run Code Online (Sandbox Code Playgroud)

但是我似乎无法理解该怎么做。

我尝试使用

      unique_count = df.groupby('config_name')['config_version'].cumcount()
      unique_count = pd.DataFrame({'config_name': [unique_count.index], 'config_version_count: [unique.count.values]})
      df = pd.merge(df,unique_count, on = 'config_name' , how …
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas pandas-groupby

2
推荐指数
2
解决办法
483
查看次数

标签 统计

python ×3

algorithm ×1

dataframe ×1

pandas ×1

pandas-groupby ×1

regex ×1