我正在为一家公司做报告,该公司跟踪通话数据与其他数字数据的关系。通话以 mm:ss 为单位进行测量,但当我尝试采用这种格式时,它要么误读数字并将其显示为小数,要么将其视为参考 AM 或 PM 的时间。
有人知道如何将这些数据转换为 mm:ss(Excel 中的数据显示为 14:32、10:04、5:14、30:54 等),以便我能够准确正确地将其绘制在散点图中吗?我试图对此进行线性回归,但由于 x 轴处理 24 小时间隔内的时间,因此我无法正确处理此问题。
有人能给我一些建议吗?谢谢。
答案1
我在这里只是猜测,但我认为您需要对 Excel 如何处理日期和时间有基本的了解。您的问题主要是后者,但我发现一般的了解有时会以意想不到的方式提供帮助。
Excel 中的日期和时间以数字形式存储。快速测试一下您的数据是否正确存储,或者它是否是伪装成数字的字符串。假设您的数据在 B13 中。您可以使用以下公式:
=ISNUMBER(B13)
=ISTEXT(B13)
这通常是成功的一半...确保您的数据采用正确的格式。
下一部分是了解这些信息是如何存储的。日期是一个整数,表示自 1900 年 1 月 1 日以来的天数(在 Mac 上可能是 1905 年),其中 1900 年 1 月 1 日为第 1 天。由于天数是整数,这意味着小数是一天或更广为人知的时间的一部分。0.5 是中午。因此,如果您以实际的分钟和秒输入时间,则会出现一些奇怪的小数。它的 excel 单元格格式将采用奇怪的小数并使其看起来像可以理解的东西。
您可以将标准时间格式应用于单元格,通常将采用 AM/PM 类型的格式。您还可以将自定义格式应用于单元格,以您想要的方式显示时间。下面是屏幕截图,显示了应用了不同自定义单元格格式的同一时间。左列为时间,右列为所用格式。
如果您有一列(假设 B13:B20)以 mm:ss 格式存储您的时间作为文本,则可以使用以下公式轻松地将其转换放在 C13 中并根据需要复制下来:
=TIME(0,--LEFT(B13,FIND(":",B13)-1),--RIGHT(B13,LEN(B13)-FIND(":",B13)))
基本上,TIME 正在寻找三个条目,TIME(HOURS,MINUTES,SECONDS),其中 HOURS、MINUTES、SECONDS 是数字。使用 LEFT 和 RIGHT,分钟和秒将从字符串中提取出来,并通过 -- 转换为数字。请注意,对以字符串形式存储的数字进行任何数学运算都会将其转换为数字。因此 +0、-0、*1 和 /1 也可以正常工作。
如果您自己执行数据输入,则有几个选项。1 是在时间前面加上“”,这将向 Excel 表明您正在输入文本。完成后,使用上述公式将您的数字从文本转换为可用的时间格式。
更好的方法是以 hh:mm:ss 或 0:90:15 的格式输入时间。前导 0: 将允许 Excel 自动以正确的单位区分您的时间。完成后,您可以将自定义格式应用于单元格,以使时间按您的喜好显示。