2882.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. # 2882. Drop Duplicate Rows
  2. import sys
  3. import pandas as pd
  4. def dropDuplicateEmails(customers: pd.DataFrame) -> pd.DataFrame:
  5. return customers.drop_duplicates(subset=['email'], keep='first')
  6. def main() -> int:
  7. def r(customers: pd.DataFrame, exp: pd.DataFrame) -> None:
  8. res: pd.DataFrame = dropDuplicateEmails(customers)
  9. print(f"dropDuplicateEmails({customers}) = {res} | exp: {exp}")
  10. pass
  11. r(
  12. pd.DataFrame.from_dict(
  13. {
  14. "customer_id": [1, 2, 3, 4, 5, 6],
  15. "name": ["Ella", "David", "Zachary", "Alice", "Finn", "Violet"],
  16. "email": [
  17. "emily@example.com",
  18. "michael@example.com",
  19. "sarah@example.com",
  20. "john@example.com",
  21. "john@example.com",
  22. "alice@example.com",
  23. ],
  24. }
  25. ),
  26. pd.DataFrame.from_dict(
  27. {
  28. "customer_id": [1, 2, 3, 4, 6],
  29. "name": ["Ella", "David", "Zachary", "Alice", "Violet"],
  30. "email": [
  31. "emily@example.com",
  32. "michael@example.com",
  33. "sarah@example.com",
  34. "john@example.com",
  35. "alice@example.com",
  36. ],
  37. }
  38. ),
  39. )
  40. return 0
  41. if __name__ == "__main__":
  42. sys.exit(main())