Untitled

 avatar
user_2758698921
plain_text
3 years ago
4.4 kB
2
Indexable
# import the pandas library and aliasing as pd
import pandas as pd

df = pd.read_csv("East_data.csv")

df = df.to_dict()
df = pd.DataFrame(df, columns=["Society", "Flats", "Zone", "Area", "AP", "RorN"])
# print(df)
Zone = input("Enter zone: ")
# GETTING THE DATAFRAME FOR REQUIRED ZONE
for i in range(df.shape[0]):
    if df["Zone"][i] != Zone:
        df = df.drop(labels=i)

# Reset index values of the dataframe and sort
df = df.reset_index()
df = df.drop(["index"], axis=1)
df = df.sort_values(by="Flats", ascending=False)


above_is_monthly = int(input("Enter value of above_is_monthly: "))
above_is_angel = int(input("Enter value of above_is_angel: "))
below_is_worst = int(input("Enter value of below_is_worst: "))


monthly_societies = df.loc[df["Flats"] >= above_is_monthly]
monthly_societies = monthly_societies.reset_index()
monthly_societies = monthly_societies.sort_values(by="AP", ascending=True)
monthly_societies = monthly_societies.drop(["index"], axis=1)

print(monthly_societies)
print("\n")

other_societies = df.loc[df["Flats"] < above_is_monthly]
other_societies = other_societies.sort_values(by="AP", ascending=True)
other_societies = other_societies.reset_index()
other_societies = other_societies.drop(["index"], axis=1)

print(other_societies)
print("\n")

RorN = other_societies.groupby(other_societies["RorN"])

new_societies = RorN.get_group('new')
repeat_societies = RorN.get_group('repeat')

new_societies = new_societies.reset_index()
new_societies = new_societies.drop(["index"], axis=1)
# new_societies = new_societies.sort_values(by="Flats", ascending=True)

print(new_societies)
print("\n")

repeat_societies = repeat_societies.reset_index()
repeat_societies = repeat_societies.drop(["index"], axis=1)
# repeat_societies = repeat_societies.sort_values(by="Flats", ascending=False)

print(repeat_societies)
print("\n")

# d = int(input("Enter value of d: "))

angel_societies = repeat_societies.loc[repeat_societies["Flats"] >= above_is_angel]
medium_societies = repeat_societies.loc[(repeat_societies["Flats"] >= below_is_worst) & (repeat_societies["Flats"] < above_is_angel)]
dull_societies = repeat_societies.loc[repeat_societies["Flats"] < below_is_worst]

angel_societies = angel_societies.reset_index()
angel_societies = angel_societies.sort_values(by="AP", ascending=True)
angel_societies = angel_societies.drop(["index"], axis=1)

print(angel_societies)
print("\n")

medium_societies = medium_societies.reset_index()
medium_societies = medium_societies.sort_values(by="AP", ascending=True)
medium_societies = medium_societies.drop(["index"], axis=1)

print(medium_societies)
print("\n")

dull_societies = dull_societies.reset_index()
dull_societies = dull_societies.sort_values(by="AP", ascending=True)
dull_societies = dull_societies.drop(["index"], axis=1)

print(dull_societies)
print("\n")
nf = pd.DataFrame()
main_list = []

a, w, m, n, monthly = 0, 0, 0, 0, 0
a_max = len(angel_societies)
w_max = len(dull_societies)
m_max = len(medium_societies)
n_max = len(new_societies)
month_max = len(monthly_societies)

while a + w + m + n + monthly < 120:
    if w < w_max:
        main_list.append(dull_societies[w:w + 1])
        w += 1
    if m < m_max:
        main_list.append(medium_societies[m:m + 1])
        m += 1
    if a < a_max:
        try:
            main_list.append(angel_societies[a:a + 2])
            a += 2
        except:
            main_list.append(angel_societies[a:])
            a = a_max
    if n < n_max:
        try:
            main_list.append(new_societies[n:n + 6])
            n += 6
        except:
            main_list.append(new_societies[n:])
            n = n_max
    if monthly < month_max:
        try:
            main_list.append(monthly_societies[monthly:monthly + 2])
            monthly += 2
        except:
            main_list.append(monthly_societies[monthly:])
            monthly = month_max

print(main_list)

# nf = pd.DataFrame(main_list)
# s1 = s2 = s3 = s4 = 0
# l1 = 8
# l2 = 2
# l3 = 1
# l4 = 1
# final_list.append(new_societies.loc[s1:l1].to_string(header=False))
# s1 += 8
# l1 += 8
# final_list.append(new_societies.loc[s1:l1].to_string(header=False))
#
# for i in range(len(final_list)):
#     print(final_list[i])




# print(final_list)


# df.to_csv(f"{Zone}.csv")