小编Sta*_*ser的帖子

pandas 中的新列,其值取决于其他列

我有一个示例数据:

datetime             col1    col2    col3
2021-04-10 01:00:00    25.    50.     50
2021-04-10 02:00:00.   25.    50.     50
2021-04-10 03:00:00.   25.    100.    50
2021-04-10 04:00:00    50.     50.    100
2021-04-10 05:00:00.   100.    100.   100
Run Code Online (Sandbox Code Playgroud)

我想创建一个名为 state 的新列,如果 col2 和 col3 值小于或等于 50,则返回 col1 值,否则返回 col1、column2 和 column3 之间的最大值。

预期输出如下图所示:

datetime             col1    col2    col3. state
2021-04-10 01:00:00    25.    50.     50.   25
2021-04-10 02:00:00.   25.    50.     50.   25
2021-04-10 03:00:00.   25.    100.    50.   100
2021-04-10 04:00:00    50.     50.    100.  100
2021-04-10 05:00:00.   100.    100.   100.  100
Run Code Online (Sandbox Code Playgroud)

python numpy pandas data-science

11
推荐指数
1
解决办法
3万
查看次数

检索满足某些条件的字典

我有一本字典,如下所示:

x = {
   "Student": [
       {
        "tags": {
                    "name": "Alex",
                    "class": "Biology",
                    "gender": "male",
                         },
        "Nationality": "",
        "Test Score": 10.0,
        "Exam Score": 70.0,
                
        },
{
        "tags": {
                    "id": "A123",
                    "height": "170",
                    "age": "15",
                         },
        "Nationality": "",
        "Test Score": 20.0,
        "Exam Score": 80.0,
                
        },
              ],
    }
Run Code Online (Sandbox Code Playgroud)

我想获得上面数据模式的测试分数和考试分数,其中有一个带有键“标签”的嵌套字典,键是“id”、“height”和“age”

所以期望值应该是 "Test Score"=20.0 and "Exam Score"=80.0

我已经尝试了以下实现,但它似乎只检查“学生”列表(长度为 2)中的第一个值,但我需要它来检查列表中的所有项目(在本例中为两个项目)。

search_tag = ["id", "height", "age"]
    val_list = []

    if all([t in search_tag for t in x["Student"][0]["tags"].keys()]):
        val_list.append(x["Student"][0]["Test Score"])
        val_list.append(x["Student"][0]["Exam Score"]) 
Run Code Online (Sandbox Code Playgroud)

python dictionary list data-science

2
推荐指数
1
解决办法
33
查看次数

标签 统计

data-science ×2

python ×2

dictionary ×1

list ×1

numpy ×1

pandas ×1