分析 Python 数据框,其中整数列以符号分隔
Analysis of Python dataframe where integer column delimited with symbol
你能帮我处理 python 中具有定界整数值的列吗?
我们如何创建一个额外的列,比如 "PHR_INSTANTENEOUS_MIN",它存储 PHR_INSTANTENEOUS 中数字的最小值。就像第一行:“-18”和第三行“14”
类似地:PHR_INSTANTENEOUS_MIN,PHR_INSTANTENEOUS_MEDIAN,PHR_INSTANTENEOUS_MODE 派生值。
要对 SINR_INSTANTENEOUS 个值重复类似的事情,我们需要形成派生值。
df1
START_TIME PRIMARY_KEY PHR_INSTANTANEOUS SINR_INSTANTANEOUS
2020-03-10 12:00:00 e7ca9da318f1 -18|-17 9|8
2020-03-10 12:01:00 68615e3db513 1 26
2020-03-10 12:05:00 7f250354808a 14|18|20|20 26|26|24|26
2020-03-10 12:07:00 9202ab7611d4 -8|-7|40 22|6|-2
2020-03-10 12:12:00 377bf955bdc0 4|9 26|20
完整数据集图片如下:
这是一种方法:
import pandas as pd
from statistics import median, mode
import numpy as np
df = pd.DataFrame(['-18|-17', '1', '14|18|20|20', '-8|-7|40', 5.2, np.nan], columns=['PHR_INSTANTANEOUS'])
# make sure the dtype is uniformly string
df['PHR_INSTANTANEOUS'] = df['PHR_INSTANTANEOUS'].astype(str)
# get the values
df['PHR_INSTANTANEOUS'].apply(lambda x: min(map(float, x.split('|')))) # minimum
df['PHR_INSTANTANEOUS'].apply(lambda x: median(map(float, x.split('|')))) # median
df['PHR_INSTANTANEOUS'].apply(lambda x: mode(map(float, x.split('|')))) # mode
你能帮我处理 python 中具有定界整数值的列吗?
我们如何创建一个额外的列,比如 "PHR_INSTANTENEOUS_MIN",它存储 PHR_INSTANTENEOUS 中数字的最小值。就像第一行:“-18”和第三行“14”
类似地:PHR_INSTANTENEOUS_MIN,PHR_INSTANTENEOUS_MEDIAN,PHR_INSTANTENEOUS_MODE 派生值。
要对 SINR_INSTANTENEOUS 个值重复类似的事情,我们需要形成派生值。
df1
START_TIME PRIMARY_KEY PHR_INSTANTANEOUS SINR_INSTANTANEOUS
2020-03-10 12:00:00 e7ca9da318f1 -18|-17 9|8
2020-03-10 12:01:00 68615e3db513 1 26
2020-03-10 12:05:00 7f250354808a 14|18|20|20 26|26|24|26
2020-03-10 12:07:00 9202ab7611d4 -8|-7|40 22|6|-2
2020-03-10 12:12:00 377bf955bdc0 4|9 26|20
完整数据集图片如下:
这是一种方法:
import pandas as pd
from statistics import median, mode
import numpy as np
df = pd.DataFrame(['-18|-17', '1', '14|18|20|20', '-8|-7|40', 5.2, np.nan], columns=['PHR_INSTANTANEOUS'])
# make sure the dtype is uniformly string
df['PHR_INSTANTANEOUS'] = df['PHR_INSTANTANEOUS'].astype(str)
# get the values
df['PHR_INSTANTANEOUS'].apply(lambda x: min(map(float, x.split('|')))) # minimum
df['PHR_INSTANTANEOUS'].apply(lambda x: median(map(float, x.split('|')))) # median
df['PHR_INSTANTANEOUS'].apply(lambda x: mode(map(float, x.split('|')))) # mode