pandas输出中只显示日期不显示时间
时间: 2024-02-13 22:01:27 浏览: 229
您可以使用 `pandas` 中的 `strftime` 方法将日期格式化为您想要的字符串格式,然后再输出。例如,如果您只想显示日期,可以使用以下代码:
```python
import pandas as pd
# 创建一个包含日期和时间的示例数据框
df = pd.DataFrame({'datetime': pd.date_range('2022-01-01', periods=3, freq='H')})
# 将日期格式化为只包含日期的字符串格式
df['date'] = df['datetime'].dt.strftime('%Y-%m-%d')
# 输出只包含日期的数据框
print(df['date'])
```
输出结果如下:
```
0 2022-01-01
1 2022-01-01
2 2022-01-01
Name: date, dtype: object
```
在上面的代码中,我们首先创建了一个包含日期和时间的示例数据框,然后使用 `dt.strftime` 方法将日期格式化为 `%Y-%m-%d` 字符串格式,并将其添加到数据框中。最后,我们只输出包含日期的那一列。
相关问题
pandas中timedelta格式只显示日期,不显示时间
如果你想要将 `timedelta` 格式化为只显示日期,可以使用 `dt.days` 属性获取天数,并将其转换为 `timedelta` 格式。下面是一个示例代码:
```python
import pandas as pd
# 创建一个 timedelta 对象,表示 2 天 12 小时 30 分钟
td = pd.Timedelta(days=2, hours=12, minutes=30)
# 将 timedelta 格式化为只显示日期
date_only = pd.Timedelta(td.days, unit='d')
print(date_only)
```
这段代码将创建一个 `timedelta` 对象 `td`,表示 2 天 12 小时 30 分钟。然后使用 `pd.Timedelta()` 函数将其转换为只包含天数的 `timedelta` 对象 `date_only`。最后输出结果如下:
```
2 days
```
注意,这种方式只适用于 `timedelta` 对象,如果是 `Timestamp` 或 `Timedelta64[ns]` 对象,需要先使用 `floor` 方法将时间戳向下取整到日期。例如:
```python
import pandas as pd
# 创建一个 Timestamp 对象,表示 2021 年 8 月 20 日 12:30:00
ts = pd.Timestamp('2021-08-20 12:30:00')
# 将 Timestamp 格式化为只显示日期
date_only = ts.floor('D')
print(date_only)
```
这段代码将创建一个 `Timestamp` 对象 `ts`,表示 2021 年 8 月 20 日 12:30:00。然后使用 `floor` 方法将其向下取整到日期,得到只包含日期的 `Timestamp` 对象 `date_only`。最后输出结果如下:
```
2021-08-20 00:00:00
```
pandas时间间隔格式只显示日期,不显示时间
你可以使用 `pandas` 库中的 `strftime` 方法来格式化时间间隔。如果你想要只显示日期而不显示时间,可以使用 `%Y-%m-%d` 格式字符串。下面是一个示例代码:
```python
import pandas as pd
# 创建一个时间间隔序列
dates = pd.date_range('2021-01-01 00:00:00', '2021-01-05 23:59:59', freq='H')
# 将时间间隔转换为日期格式,只显示日期
date_only = dates.strftime('%Y-%m-%d')
print(date_only)
```
这段代码将创建一个从 2021 年 1 月 1 日到 2021 年 1 月 5 日的时间间隔序列,频率为每小时一次。然后使用 `strftime` 方法将时间间隔转换为日期字符串,只显示年月日,不显示时间。最后输出结果如下:
```
['2021-01-01' '2021-01-01' '2021-01-01' ... '2021-01-05' '2021-01-05'
'2021-01-05']
```
阅读全文