Search code examples
pythonpandasdataframedata-analysis

Adding text between data column in python


I have a df,

   Names    Values  TC
   Ram      2      TC Count
   pechi    2      TC Count
   Sunil    1      TC Count
   Ravi     1      TC Count
   sri      1      TC Count

I want to add some texts between the data columns

I tried df.join but not wot working fine,

My expected output is,

df,

Names    Values  
Ram      val2balTCcount   
pechi    val2balTCcount         
Sunil    val1balTCcount         
Ravi     val1balTCcount         
sri      val1balTCcount   

Thanks in Advance!


Solution

  • Use:

    • convert all numeric columns to string by astype
    • replace whitespaces by empty space

    df['Values'] = 'val' + df['Values'].astype(str) + 'bal' + df['TC'].str.replace('\s+', '') 
    print (df)
       Names          Values        TC
    0    Ram  val2balTCCount  TC Count
    1  pechi  val2balTCCount  TC Count
    2  Sunil  val1balTCCount  TC Count
    3   Ravi  val1balTCCount  TC Count
    4    sri  val1balTCCount  TC Count
    

    And if need remove TC column use pop:

    df['Values'] = 'val' + df['Values'].astype(str) + 'bal' + df.pop('TC').str.replace('\s+', '')
    print (df)
       Names          Values
    0    Ram  val2balTCCount
    1  pechi  val2balTCCount
    2  Sunil  val1balTCCount
    3   Ravi  val1balTCCount
    4    sri  val1balTCCount