Pandas Dataframe Numbers Comma Formatted
I have a Pandas dataframe like below. XY 0 1234567890 1 54321N/A 2 67890123456 I need to make these numbers comma formatted. For example, 12345 => 12,345. Please help. Thanks. -- https://mail.python.org/mailman/listinfo/python-list
Re: Pandas Dataframe Numbers Comma Formatted
On Sat, 09 May 2020 14:42:43 +0200, Python wrote:
> Joydeep wrote:
>> I have a Pandas dataframe like below.
>>
>> XY
>> 0 1234567890 1 54321N/A 2 67890123456
>>
>> I need to make these numbers comma formatted. For example, 12345 =>
>> 12,345.
>
> >>> value = 12345 f'{value:,}' # >= 3.6
> '12,345'
> >>> '{:,}'.format(value) # >= 2.7
> '12,345'
I need all the numbers in the whole dataframe to be formatted like that,
not one value.
--
https://mail.python.org/mailman/listinfo/python-list
Re: Pandas Dataframe Numbers Comma Formatted
On Sat, 09 May 2020 15:46:27 +0200, Python wrote:
> Joydeep C wrote:
>> On Sat, 09 May 2020 14:42:43 +0200, Python wrote:
>>
>>> Joydeep wrote:
>>>> I have a Pandas dataframe like below.
>>>>
>>>> XY
>>>> 0 1234567890 1 54321N/A 2 67890123456
>>>>
>>>> I need to make these numbers comma formatted. For example, 12345 =>
>>>> 12,345.
>>>
>>> >>> value = 12345 f'{value:,}' # >= 3.6
>>> '12,345'
>>> >>> '{:,}'.format(value) # >= 2.7
>>> '12,345'
>>
>> I need all the numbers in the whole dataframe to be formatted like
>> that,
>> not one value.
>
> >>> data.applymap((lambda x: f"{x:,}") )
> X Y
> 0 12,345 67,890.0 1 54,321 nan 2 67,890 12,345.0
> >>> data.apply(np.vectorize((lambda x: f"{x:,}")))
> X Y
> 0 12,345 67,890.0 1 54,321 nan 2 67,890 12,345.0
It's giving error - "Cannot specify ',' with 's'."
--
https://mail.python.org/mailman/listinfo/python-list
Re: Pandas Dataframe Numbers Comma Formatted
On Sat, 09 May 2020 17:24:41 +0200, Python wrote:
> Joydeep C wrote:
>> On Sat, 09 May 2020 15:46:27 +0200, Python wrote:
>>
>>> Joydeep C wrote:
>>>> On Sat, 09 May 2020 14:42:43 +0200, Python wrote:
>>>>
>>>>> Joydeep wrote:
>>>>>> I have a Pandas dataframe like below.
>>>>>>
>>>>>>XY
>>>>>> 0 1234567890 1 54321N/A 2 67890123456
>>>>>>
>>>>>> I need to make these numbers comma formatted. For example, 12345 =>
>>>>>> 12,345.
>>>>>
>>>>>>>> value = 12345 f'{value:,}' # >= 3.6
>>>>> '12,345'
>>>>>>>> '{:,}'.format(value) # >= 2.7
>>>>> '12,345'
>>>>
>>>> I need all the numbers in the whole dataframe to be formatted like
>>>> that,
>>>> not one value.
>>>
>>> >>> data.applymap((lambda x: f"{x:,}") )
>>> X Y
>>> 0 12,345 67,890.0 1 54,321 nan 2 67,890 12,345.0
>>> >>> data.apply(np.vectorize((lambda x: f"{x:,}")))
>>> X Y
>>> 0 12,345 67,890.0 1 54,321 nan 2 67,890 12,345.0
>>
>> It's giving error - "Cannot specify ',' with 's'."
>
> It means that you're not storing numbers in your dataframe but strings,
> which is likely not what you want here. Fix that first.
Of course, they are strings. It's "N/A", not nan.
--
https://mail.python.org/mailman/listinfo/python-list
